nginx在ubuntu16.04的安装

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 561F9B9CAC40B2F7
sudo apt-get install -y apt-transport-https ca-certificates

# Add Passenger APT repository
sudo sh -c 'echo deb https://oss-binaries.phusionpassenger.com/apt/passenger xenial main > /etc/apt/sources.list.d/passenger.list'
sudo apt-get update

# Install Passenger & Nginx
sudo apt-get install -y nginx-extras passenger

遇到的问题

nginx参考gorails的内容,到阿里云(digitalocean不会出现这个问题)出现两个问题,第一个问题是不能读取pid,第二个问题是不能访问80端口,两个问题的发现以及步骤如下所示:

#问题1,不能读取pid文件
sudo service nginx stauts #通过这个命令查看nginx的状态,得到Failed to read PID from file /run/nginx.pid: Invalid argument
#问题1的解决,在root用户权限下面运行下面的命令
mkdir /etc/systemd/system/nginx.service.d
printf "[Service]\nExecStartPost=/bin/sleep 0.1\n" > /etc/systemd/system/nginx.service.d/override.conf
systemctl daemon-reload
systemctl restart nginx 


#问题2,不能访问80端口
curl -i http://127.0.0.1:80#从服务器访问返回200,表示成功
curl -i http://172.16.243.19:80 #从服务器访问返回200,表示成功,其中172.16.243.19是阿里云这个实例中的局域网ip
curl -i http://116.62.163.17:80 #从服务器中不能访问,表示外网不能访问
#解决方式是在阿里云中对实例进行设置,设置本实例安全组,设置从外访问中,80端口是可以通过的

常用的命令

#频繁使用的命令
sudo service nginx restart #重新启动nginx
sudo service nginx status #查看状态

#文件变动之后需要重载和重启
sudo service nginx reload
sudo service nginx restart

#会使用的命令
sudo service nginx start #启动nginx
sudo service nginx stop #停止nginx
sudo nginx -t #测试配置文件是否合适

#log文件的地址
/var/log/nginx/access.log 
/var/log/nginx/error.log 

#配置文件是两个,在/etc/nginx文件夹中
nginx.conf文件 #/etc/nginx文件夹中
default文件  #/etc/nginx/sites-enabled中

results matching ""

    No results matching ""