一. 安装Nginx需要的环境
1.C语言的环境
yum -y install gcc-c++
2.安装pcre环境
1. 下载pcre的压缩包:wget http://downloads.sourceforge.net/project/pcre/pcre/8.37/pcre-8.37.tar.gz
2. 解压压缩包 -> tar -zxvf pcre-8.37.tar.gz
如指定则 tar -zxvf pcre-8.37.tar.gz -C /usr/local
3. 跳转到pcre的目录下 找到并执行 ./configure
4. 使用C语言的环境编译并安装
make && make install
make install PREFIX=目录 -> 就可以安装到指定目录下
3.安装各种其他环境make,tools....
yum -y install make zlib zlib-devel gcc-c++ libtool openssl-devel
二. 安装Nginx
1.下载nginx的压缩包:wget http://nginx.org/download/nginx-1.12.2.tar.gz
2.解压压缩包 -> tar -zxvf nginx-1.12.2.tar.gz
3.检查环境 -> ./configure (error -> log 日志文件暂时不需要)看图一
4.执行编译并且安装(如果在安装的时候出现问题,则看下面解决办法)
make && make install PREFIX=/usr/local
图一
三. nginx安装出现问题(附带解决办法)
1. 问题
2.解决办法
1. cd /nginx-1.12.2/src/os
2. vim unix
3. 找到并回车键进入 ngx_user.c (图二)
4. 把这一行注释掉(图三)
5. cd objs
6. vim Makefile
7. 删除 -Werror (图四)
8. 重新使用 make && make install
图二
图三
图四
四. Nginx的启动
1. 找到nginx的目录 (图五)
2. 启动nginx
cd sbin/
./nginx
nginx的常用命令
①查看nginx版本号: ./nginx -v
②检测nginx是否可以启动(检测配置文件): ./nginx -t (图六)
③启动 nginx: ./nginx
④重启 nginx: ./nginx -s reload
⑤停止 nginx: ./nginx -s stop
如果需要启动指定的nginx.conf,则用以下命令 ( -c nginx.conf所在位置,重启也可以加)
./nginx -c /nginx/conf/nginx.conf
3. 查看nginx是否启动成功(图七 master/worker模式)
ps -ef | grep nginx
4. nginx默认占领 80端口
netstat -nao | grep 80
图五
图六
图七
五. 访问不到nginx(附带排查和解决问题)
排查
1. netstat -ntlp
如果显示 tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 353314/nginx: maste 则说明没有问题
2. curl ip
查看是否可以弄通,如果弄不通就去下面两个问题找
非阿里云问题
1. 查看防火墙的开放端口:firewall-cmd --list-ports
2. 如果80端口未开放,则自己添加(看到 success 就添加成功了)
firewall-cmd --zone=public --add-port=80/tcp --permanent
3. 开放指定端口
firewall-cmd --add-port=8081/tcp --permanent
重载入添加的端口: firewall-cmd --reload
查询指定端口是否开启成功: firewall-cmd --query-port=8081/tcp
移除指定端口: firewall-cmd --permanent --remove-port=8081/tcp
3. 重启防火墙
systemctl restart firewalld.service
阿里云问题
经过查看以后,发现Nginx启动成功,并且端口开放,最后发现是阿里云安全组配置问题
1. 选择好自己买的地域
2. 找到图八
3. 找到图九
4. 找到图十配置完成以后不需要重启就可以去使用了
图八
图九
图十