欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

centos6.8安装配置nginx

程序员文章站 2024-03-11 10:32:07
...

1 安装

1.1 gcc 安装

yum install gcc-c++

1.2 PCRE pcre-devel 安装

yum install -y pcre pcre-devel

1.3 zlib 安装

yum install -y zlib zlib-devel

1.4 OpenSSL 安装

yum install -y openssl openssl-devel

1.5 下载Nginx

wget -chttps://nginx.org/download/nginx-1.10.1.tar.gz

1.6 解压Nginx

tar -zxvf nginx-1.10.1.tar.gz

1.7 进入nginx解压目录

cd nginx-1.10.1

1.8 配置Nginx

./configure

1.9 编译

make

1.10 安装

make install

1.11 查找安装路径

whereis nginx

1.12 进入nginx安装路径

cd /usr/local/nginx/sbin

1.13 启动

方式一:使用默认配置启动

 ./nginx

方式二:指定配置文件位置启动

/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

1.14 停止

方式一:先查出nginx进程id再使用kill命令强制杀掉进程

./nginx -s stop

方式二:待nginx进程处理任务完毕进行停止

./nginx -s quit

1.15 验证nginx的配置文件是否正确

方式一:验证默认配置文件

./nginx -t

方式二:验证指定位置的配置文件

/usr/local/nginx/sbin/nginx -t -c /usr/local/nginx/conf/nginx.conf

1.16 重启

 ./nginx -s reload

2 配置

2.1 配置静态HTTP服务器

server {
    listen  80; # 端口号
    location / {
        root /usr/share/nginx/html; # 静态文件路径
    }
}

2.2 配置反向代理服务器

server {
    listen  80;
    location / {
        proxy_pass http://116.196.73.180; # 应用服务器HTTP地址
    }
}

2.3 配置负载均衡

upstream blog {
    server 116.196.73.180 weight=3; # 应用服务器1  该服务器处理3/4请求
    server 116.196.73.181; # 应用服务器2 weight默认为1,该服务器处理1/4请求
}
server {
    listen 80;
    location / {
        proxy_pass http://blog;
    }
}

2.4 配置虚拟主机

有的网站访问量大,需要负载均衡。然而并不是所有网站都如此出色,有的网站,由于访问量太小,需要节省成本,将多个网站部署在同一台服务器上。

例如将www.aaa.com和www.bbb.com两个网站部署在同一台服务器上,两个域名解析到同一个IP地址,但是用户通过两个域名却可以打开两个完全不同的网站,互相不影响,就像访问两个服务器一样,所以叫两个虚拟主机。

配置:

server {  
    listen 80 default_server;  
    server_name _;  
    return 444; # 过滤其他域名的请求,返回444状态码  
}   
server {  
    listen  80;  
    server_name www.aaa.com; # www.aaa.com域名  
    location / {  
        proxy_pass http://localhost:8080; # 对应端口号8080  
    }  
}  
server {  
    listen  80;  
    server_name www.bbb.com; # www.bbb.com域名  
    location / {  
        proxy_pass http://localhost:8081; # 对应端口号8081  
    }  
}

在服务器8080和8081分别开了一个应用,客户端通过不同的域名访问,根据server_name可以反向代理到对应的应用服务器。

虚拟主机的原理是通过HTTP请求头中的Host是否匹配server_name来实现的,有兴趣的同学可以研究一下HTTP协议。

另外,server_name配置还可以过滤有人恶意将某些域名指向你的主机服务器。

相关标签: linux