第一部分 安装nginx,已安装nginx直接看第二部分
1.下载压缩包
#下载压缩包,版本采用nginx-1.9.9
wget http://nginx.org/download/nginx-1.9.9.tar.gz
# 解压
tar -xvf nginx-1.9.9.tar.gz
2.相关插件安装命令
# 依次执行
yum install -y wget
yum install -y vim-enhanced
yum install -y make cmake gcc gcc-c++
yum -y install gcc openssl openssl-devel pcre-devel zlib zlib-devel
#【https需要】安装SSL模块需要
yum -y install openssl openssl-devel
3.安装nginx到指定的目录
到此目录下
# 去到nginx-1.9.9的解压目录下,指定安装到某一路径,此处为/export/nginx
./configure --prefix=/export/nginx
#【然后在执行,编译安装用这个命令】
make && make install
# 查看nginx是否安装成功
cd /export/nginx/sbin
./nginx -v
出现版本号即安装成功
第二部分 安装SSL模块,已安装ssl模块直接看第三部分
#到nginx-1.9.9的解压目录下,有configure文件的
#重新添加ssl模块
#指定了非默认安装路径的,需要指定一下--prefix配置模块的路径
./configure --prefix=/export/nginx --with-http_ssl_module
#【然后在执行,编译安装用这个命令】
make
执行到这一步后,解压目录中的objs文件夹中多了一个nginx的程序文件,这就是新版本的程序文件
需要通过命令把安装目录sbin下的nginx备份一下,再覆盖重启即可【注意:覆写操作时,nginx需停止】
#原nginx程序文件备份,启动失败可以迅速回退
cp /export/nginx/sbin/nginx /export/nginx/sbin/nginx.bak
#覆写前需停止nginx,到安装目录的sbin文件夹下
cd /export/nginx/sbin
./nginx -s stop
#在configure所在目录执行此句
cp objs/nginx /export/nginx/sbin/nginx
#重新启动nginx,启动的时候写上路径,如果以后忘了nginx安装路径,可以从进程中看到
/export/nginx/sbin/nginx -c /export/nginx/conf/nginx.conf
#查看ssl模块是否安装成功
cd /export/nginx/sbin
# 大写V,才会出现版本号以外的其他信息
./nginx -V
出现这个,则安装成功
第三部分 nginx.conf文件配置https
配置https需要证书,默认已经有证书文件了,我是从阿里云申请的三个月免费ssl证书,有pem和key两种格式
在nginx安装目录下的conf文件夹中,编辑nginx.conf文件
需要确认
1.服务器443端口放行
2.ssl证书文件读取权限
3.ssl证书文件有效
#编辑安装目录下的配置文件
vim /export/nginx/conf/nginx.conf
#添加以下部分,修改路由地址和证书地址
server {
listen 443 ssl;
server_name xxx.xxx.cn;
ssl_certificate /export/nginx/conf/ssl/xxx.xxx.cn.pem;
ssl_certificate_key /export/nginx/conf/ssl/xxx.xxx.cn.key;
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
location /wifi/ {
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://localhost:8090/;
}
}
编辑完配置文件后
保存并退出,然后重载配置文件即可
#编辑文件后,按esc退出编辑模式然后输入保存命令
:wq!
# 重载nginx配置文件
cd /export/nginx/sbin
./nginx -s reload