情景
情景:
在学习ngnix时,由于资料缺失,配置ngnix时一直有问题,故在此在这总结。
桌面虚拟计算机软件 | VMware Workstation 12 Pro 12.5.5 |
---|---|
linux版本 | CentOS-7-x86_64 |
终端仿真程序 | SecureCRT 7.3.3 |
linux的ip查不到
并未查明。虚拟机使用的nat是连接。在网上找到的方法“配置eth0文件”“在*文件中加入SNS信息”……都没有用,使用之后,重启网络失败。最后推测虚拟机安装有问题(例如没有配置开机连接网络)。
linux make 没有规则可以创建“default”
configure时,失败信息“linux make 没有规则可以创建“default””
缺少Perl库,在SecureCRT是使用 yum指令失败,导致问题。
在SecureCRT上使用yum指令失败
失败信息“could not retrieve mirrorlist http://mirrorlist.centos.org……”
并未查明。推测是由于linux的防火墙未关闭,导致yum失败。当时是在VMware Workstation使用yum指令,并成功。
查看进程ps aux|grep ngnix并未看到nginx进程
并未查明。推测是版本问题。
linux如何查看nginx是否启动
- 通过进程判断
- 直接查看进程id
ps -C nginx -o pid
- 直接查看进程id
- 通过端口判断
- 使用netstat命令
netstat -anp | grep :80
(当ngnix使用80 端口) - 使用lsof命令
lsof -i:80
(当ngnix使用80 端口)
- 使用netstat命令
ngnix已启动,但网页连不上
防火墙未关闭。原因并不复杂,但由于是使用centos7系统,默认使用的是firewall作为防火墙,指令不同。
详解centos6和centos7防火墙的关闭
关闭防火墙:
systemctl stop firewalld.service
停止firewall
systemctl disable firewalld.service
禁止firewall开机启动
firewall-cmd --state
查看默认防火墙状态(关闭后显示notrunning,开启后显示running)
虚拟机重启后,ngnix出错
出错信息“nginx: [emerg] open() “/var/run/nginx/nginx.pid” failed (2: No such file or directory)”
原因是进行configure时,设置pid文件放在/var/run/nginx文件夹。在虚拟机重启后,会自动删除。重新configure,设置pid文件放在/var/run文件夹。