nginx的安装
- yum源安装(可根据官方的提示来做:官方教程)
1 | yum install -y yum-utils |
- 源码安装
安装pcre依赖环境
1 | yum install -y gcc gcc-c++ zlib-devel |
下载源码包并解压:
1 | wget http://mirrors.sohu.com/nginx/nginx-1.9.8.tar.gz |
创建一个nginx用户:
1 | useradd -s /sbin/nologin nginx |
编译:
1 | ./configure --prefix=/usr/local/nginx --with-pcre=/usr/local/src/pcre-8.43 --user=nginx |
启动并放行防火墙:
1 | /usr/local/nginx/sbin/nginx |
给nginx配置https
我们此时需要一个证书,可以去申请,这里的话我用openssl自己签发一个。
1、安装openssl
1 | yum install -y openssl openssl-devel |
2、创建服务器私钥,默认会让输入一个口令,以后重启nginx都需要,但是可以等创建好后移除
1 | openssl genrsa -des3 -out server.key 1024 |
3、创建签名请求的证书(csr),颁发证书
1 | openssl req -new -key server.key -out server.csr |
4、去除生成私钥时的所需要的密码
1 | cp server.key server.key.org |
5、自签发根证书
1 | openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt |
6、配置nginx配置文件,让其包含证书和私钥(针对yum安装的,源码安装的下面会说)
1 | #vim /etc/nginx/nginx.conf(在http里面添加) |
然后重启nginx服务。
这个时候虽然是https,但是由于我们没有购买证书,所以对于浏览器还是不信任的。我们可以自己弄一个CA证书,然后安装在本地,使浏览器对该网站信任,但是对于别人而言还是不信任的。所以我们可以找一个ssl证书的颁发机构,去弄一个。
7、关于源码安装的nginx的配置
我们在生成私钥以及公钥后,对于源码安装的服务器而言,需要重新编译一遍。
我们先看以前编译的选项:
1 | /usr/local/nginx/sbin/nginx -V |
然后进入我们解压的nginx源码包
1 | ./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-file-aio --with-http_realip_module |
这个时候,本路径下的objs文件夹下将出现新的nginx启动程序,我们先备份以前的,然后使用新的启动程序。(先停止nginx服务)
1 | /usr/local/nginx/sbin/nginx -s stop |
修改配置文件如上面就行。