初次在Ubuntu Linux下使用Nginx,留个记录。
我是通过sudo apt-get install nginx安装的,因为自己下载tar.gz文件安装的话,还需要解决包依赖关系。
安装后,以下是常用命令:
sudo nginx #启动
sudo nginx -s stop #停止
sudo nginx -t #测试配置文件是否正确,此命令很有用
此外,在网上找到在不停止nginx服务的情况下使更改的配置生效:
kill -HUP `cat /usr/local/nginx/nginx.pid` #未测试,不知可否
此外,安装完nginx后,最好是将/doc及/images删掉,
sudo vi /etc/nginx/sites-available/default
将location /doc{} 及location /images{}删除。
整合tomcat.
sudo vi /etc/nginx/conf.d/proxy.conf
输入以下内容:
#!nginx (-)
# proxy.conf
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr; #获取真实ip
#proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; #获取代理者的真实ip
client_max_body_size 10m;
client_body_buffer_size 128k;
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;
假如,在tomcat上跑着http://localhost:8080/temp/index.jsp
然后:sudo vi /etc/nginx/sites-avalable/defalut
在server {}中加入:
location ~ .*.[jsp|do|action]$ { #所有jsp页面以及do/action请求均交由tomcat处理
index index.jsp;
proxy_pass http://localhost:8080; #转向tomcat处理
}
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ { #设定访问静态文件直接读取不经过tomcat
expires 30d;
}
location ~ .*\.(js|css)?$ {
expires 1h;
}
打开http://localhost/temp/index.jsp,跟http://localhost:8080/temp/index.jsp一致。
注:此文参照上资料所写。