Nginx (“engine x”) 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器。 Nginx 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,第一个公开版本0.1.0发布于2004年10月4日。其将源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。
首先需安装nginx依赖库
- 安装gcc c++的依赖库
apt-get install build-essential
apt-get install libtool
- 安装pcre依赖库
sudo apt-get update
sudo apt-get install libpcre3 libpcre3-dev
- 安装zlib依赖库
apt-get install openssl
下载、安装nginx
wget -c https://nginx.org/download/nginx-1.12.1.tar.gz
# 解压
tar -zxvf nginx-1.12.1.tar.gz
cd nginx-1.12.1/
# 使用默认配置
./configure --prefix=/usr/local/nginx
# 编译安装
make
make install
# 启动Nginx
cd /usr/local/nginx/sbin/
./nginx
# nginx相关命令
./nginx -s stop
./nginx -s quit
./nginx -s reload
# Nginx默认监听80端口,防火墙打开80端口
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --reload
# 查看nginx进程:
ps -ef|grep nginx
配置nginx
# 配置ngnix
cd /usr/local/nginx/conf/
使用vim或nano编辑器在该目录下新建一个ihasy.conf文件输入以下内容:
upstream ihasy {
server 127.0.0.1:9001; #Tornado
}
## Start www.ihasy.com ##
server {
listen 80;
server_name www.ihasy.com ihasy.com;
#root html;
#index index.html index.htm index.py index;
## send request back to Tornado ##
location / {
proxy_pass http://ihasy;
#Proxy Settings
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;
proxy_max_temp_file_size 0;
proxy_connect_timeout 90;
proxy_send_timeout 90;
proxy_read_timeout 90;
proxy_buffer_size 4k;
proxy_buffers 4 32k;
proxy_busy_buffers_size 64k;
proxy_temp_file_write_size 64k;
}
}
## End www.ihasy.com ##
再使用vim或nano打开 /usr/local/nginx/conf/nginx.conf
vim /usr/local/nginx/conf/nginx.conf
在http下添加一行
include ihasy.conf
保存,重启nginx,即可实现反向代理。