一、Nginx 的安装##
1. 安装依赖
sudo apt-get install openssl libssl-dev
sudo apt-get install libpcre3 libpcre3-dev
sudo apt-get install zlib1g-dev
**2. 下载 Nginx **
方法一:本地下载之后再通过FTP工具上传到云主机。
方法二:通过命令下载。
wget http://nginx.org/download/nginx-1.14.0.tar.gz
3. 解压,重命名
# 解压
tar -xzvf nginx-1.14.0.tar.gz
# 重命名
mv nginx-1.14.0 nginx
**4. 安装Nginx **
# 配置(这条命令在解压后的Nginx目录下执行,/usr/local/nginx 为安装路径)
sudo ./configure --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_realip_module
# 编译
sudo make
# 安装
sudo make install
5. 安装完成后检测
cd /usr/local/nginx/sbin
./nginx -t
测试失败的情况:
解决办法:
错误的原因是没有创建www这个用户,应该在服务器系统中添加www用户组和用户www,如下命令:
/usr/sbin/groupadd -f www
/usr/sbin/useradd -g www www
(据说在nginx.conf中 把user nobody的注释去掉也可以解决问题,但是我试了没啥用 。)
测试成功:
6. 启动,停止,重启
# 测试
./nginx -t
# 启动
./nginx
# 重启
./nginx -s reload
# 停止
./nginx -s stop
二、Nginx 简单应用##
1. 添加配置文件
在nginx.config中添加配置:
liuzh.config文件配置如下:
server{
listen 80;
server_name itison.cn;
location / {
root /usr/liuzh-web;
index index.html index.htm;
}
location ~ /static/(css|js|img){
root /usr/liuzh-web;
}
location ~ /(css|js|images)/*{
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://127.0.0.1:9889;
}
location ~ /api/*{
client_max_body_size 100m;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://127.0.0.1:9889;
}
location ~ /login/*{
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://127.0.0.1:9889;
}
location ~ /logout{
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://127.0.0.1:9889;
}
}
完成以上操作后,重启一下Nginx即可。
注意: 你访问的域名必须是你的配置的 server_name ,而且这个域名必须是已经解析到你的云主机, 如果没有解析到你的云主机的域名,则 server_name 可以为你主机的 IP,同样你必须通过 IP 去访问,不然会报错:connect() failed (111: Connection refused) while connecting to upstream *
这个错误可以通过Nginx的 error.log 日志查看的到,当然了,这个错误的出现的原因也可能是其他。
感谢您的阅读,欢迎参观我的个人网站:小嗨词典【 https://www.happydict.cn】