nginx最基础的使用,看完本章可以自己搭建通过nginx实现反向代理服务器。
Nginx基础
Nginx简介
Nginx是什么?
Nginx是一款轻量级Web服务器、也是一款反向代理服务器。特点是高稳定、高性能、资源占用少、功能丰富、模块化结构和支持热部署。
- 直接支持Rails和PHP的程序
- 可作为HTTP反向代理服务器
- 作为负载均衡服务器
- 作为邮件代理服务器
- 帮助实现前段动静分离
Nginx的具体实现
Nginx安装(Windows)
- 下载http://nginx.org/download/nginx-1.10.2.zip
- 解压缩
- 运行解压目录中的nginx.exe
虚拟域名配置及测试验证
Windows配置流程
- 编辑安装目录下的/conf/nginx.conf文件
- 增加内容
include vhost/*.conf;
- 保存退出
- 在安装目录下的conf目录下新建vhost文件夹
- 创建域名转发配置文件,如image.v1qqfh.com.conf
server { listen 80; autoindex off; server_name image.v1qqfh.com; access_log c:/access.log combined; index index.html index.htm index.jsp index.php; #error_page 404 /404.html; if ( $query_string ~* ".*[\;'\<\>].*" ){ return 404; } location / { proxy_pass c:\ftpfile\img; add_header Access-Control-Allow-Origin *; } }
- 启动验证,CMD模式下输入如下内容
启动:nginx 重启:nginx -s reload
- 设置host后,访问网址验证是否成功(成功则能访问到配置的页面)
Nginx的相关知识
常用命令
在安装路径下执行/nginx/sbin/nginx文件
常用命令 | 说明 |
---|---|
nginx -t | 测试配置文件是否正确 |
nginx | 启动命令 |
nginx -s stop | 停止命令 |
nginx -s quit | 停止命令 |
nginx -s reload | 重启命令 |
配置文件(server虚拟主机配置)
server
{
listen 80;
server_name www.v1qqfh.com;
index index.jsp index.htm index.php;
#root /developer/apache-tomcat-7.0.73/webapps/ROOT;
access_log off;
location / {
proxy_pass http://127.0.0.1:8080/;
proxy_set_header Host $http_host;
proxy_set_header Cookie $http_cookie;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
client_max_body_size 100m;
}
}
其他关联知识
平滑重启
指不影响正在运行的版本的同时切换到新版本。老版本会等待所有链接结束后关闭。
命令 | 说明 |
---|---|
kill -HUP 【nginx主进程号】 | 平滑重启 |
ps -ef|grep nginx | 查看主进程号(PID) |
Linux增加防火墙访问权限
- sudo vim /etc/sysconfig/iptables
- -A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
- 保存退出
- 重启防火墙sudo service iptables restart
修改host文件
- 进入C:\Windows\System32\drivers\etc
- 记事本打开hosts文件
- 添加对应的域名及IP
127.0.0.1 www.v1qqfh.com 127.0.0.1 test.v1qqfh.com
- 保存退出