一。环境准备
(1) 安装wget,用来下载nginx安装包
#yum install wget
#yum install gcc-c++
#yum -y install pcre pcre-devel
#yum -y install zlib zlib-devel
(5) openssl安装,Nginx提供http和https协议,https是大势所趋,坑爹的微信小程序需要支持https,其实https也不难,只需要配置下即可,关键是证书麻烦,建议大家去startssl申请证书,免费,只是需要的材料较多,以后有机会给大伙写一篇关于申请ssl证书的博文。
#yum install -y openssl openssl-devel
(6) 官网下载 http://nginx.org/en/download.html 找到自己需要的版本下载
$ wget http://nginx.org/download/nginx-1.12.0.tar.gz
二。安装Nginx
(1) 解压
$ tar zxvf nginx-1.12.0.tar.gz
(2) 编译,安装
$ cd nginx-1.12.0
$ ./configure --prefix=/home/zsg/program/nginx #指定安装目录
$ make # 编译
$ make install # 安装
在 /home/zsg/program/nginx下会生成以下几个目录
三。 nginx的启动,停止
cd /home/zsg/program/nginx/sbin
./nginx
./nginx -s stop
./nginx -s quit
./nginx -s reload
./nginx -s quit:此方式停止步骤是待nginx进程处理任务完毕进行停止。
./nginx -s stop:此方式相当于先查出nginx进程id再使用kill命令强制杀掉进程。
四。 nginx的权限问题
(1) 1024以下端口必须用root权限启动
将端口改成7080,用非root账户启动,访问http://192.168.43.129:7080/
(2) 用非root用户启动 nginx,从80端口访问
方法一
使用非80端口启动程序,然后再用iptables做一个端口转发。
方法二
假设我们需要启动的程序是nginx,直接监听80端口的访问,那么这么做也可以达到目的。
一开始我们查看nginx的权限描述:
-rwxrwxr-x. 1 zsg zsg 3659600 Aug 1 23:28 nginx
这个时候必然是无法正常启动的。
首先修改文件所属用户为root:
chown root.root nginx
然后再加上s权限:
chmod u+s nginx
再次查看权限描述的时候:
-rwsrwxr-x. 1 root root 3659600 Aug 1 23:28 nginx
这个时候再启动。
如果还有403的问题,那就是访问目录的权限问题了
(1) 在配置文件中把 user nobody 改成你访问的目录拥有者 例如 user zsg
(2) 修改web目录的读写权限 chmod -R 755 /var/www