1.所有需要的东西
1.1 nginx 自己百度下载
1.2 tomcat6.0 自己百度下载
1.3 确保tomcat6.0 下面有已经发布的项目
2.ngxin的安装与调试
2.1 安装nginx
这是我下载的nginx
我讲它解压到这个位置(路径最好不要有空格,小心以后的麻烦事儿)
2.2运行nginx
运行后 控制台一闪而过 在浏览器中输入localhost后没有任何反应 查看任务管理器后发现根本没有 nginx的进程
然后百度一下 关键字是 nginx启动没有反应 然后有个文章说 可以查看nginx的logs目录下的errors.log
查看后发现日志上说 80端口被占用 需要自己配置另一个端口
找到conf/nginx.conf文件 然后修改 listen 80 ->改为 listen 8088
运行nginx
浏览器中localhost:8088成功出现nginx的欢迎界面
3.nginx下配置tomcat
3.1 nginx的nginx.conf文件的配置(文件在conf/nginx.conf)
nginx.conf
#Nginx所用用户和组,window下不指定
#user niumd niumd;
#工作的子进程数量(通常等于CPU数量或者2倍于CPU)
worker_processes 2;
#错误日志存放路径
#error_log logs/error.log;
#error_log logs/error.log notice;
error_log logs/error.log info;
#指定pid存放文件
pid logs/nginx.pid;
events {
#使用网络IO模型linux建议epoll,FreeBSD建议采用kqueue,window下不指定。
#use epoll;
#允许最大连接数
worker_connections 2048;
}
http {
include mime.types;
default_type application/octet-stream;
#定义日志格式
#log_format main '$remote_addr - $remote_user [$time_local] $request '
# '"$status" $body_bytes_sent "$http_referer" '
# '"$http_user_agent" "$http_x_forwarded_for"';
#access_log off;
access_log logs/access.log;
client_header_timeout 3m;
client_body_timeout 3m;
send_timeout 3m;
client_header_buffer_size 1k;
large_client_header_buffers 4 4k;
sendfile on;
tcp_nopush on;
tcp_nodelay on;
#keepalive_timeout 75 20;
include gzip.conf;
upstream localhost {
#根据ip计算将请求分配各那个后端tomcat,许多人误认为可以解决session问题,其实并不能。
#同一机器在多网情况下,路由切换,ip可能不同
#我只是用了第一个 8080端口的tomcat 第二个tomcat 18080没有使用 暂时不看它
#这里是后面需要的,所有的文件都配置好了 运行tomcat 然后运行nginx 界面都能显示 但是没有 css 图片 后来百度配置到这里解决
#root后面的目录千万要注意 我的目录中Program Files之间有空格 导致nginx启动一直出错 说root这行有问题 后来百度 给目录加上双引号解决
#我的静态文件都在resource文件夹下 配置的时候找到本地的resources文件夹的目录
#D:/Program Files/apache-tomcat-6.0.41/webapps/qledu/WEB-INF/resources 配置时删除了/resources就行了
#ip_hash;
server localhost:8080;
server localhost:18080;
}
server {
listen 8088;
server_name localhost;
location / {
proxy_connect_timeout 3;
proxy_send_timeout 30;
proxy_read_timeout 30;
proxy_pass http://localhost;
}
location ~ \.(html|js|css|png|gif|jpg)$ {
root "D:/Program Files/apache-tomcat-6.0.41/webapps/qledu/WEB-INF";
}
}
}
3.2配置Proxy.conf文件在(config/Proxy.conf下 如果没有就自己新建)
Proxy.conf
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;
client_max_body_size 10m;
client_body_buffer_size 128k;
proxy_connect_timeout 300;
proxy_send_timeout 300;
proxy_read_timeout 300;
proxy_buffer_size 4k;
proxy_buffers 4 32k;
proxy_busy_buffers_size 64k;
proxy_temp_file_write_size 64k;
3.2配置Gzip.conf文件在(config/Gzip.conf下 如果没有就自己新建)
Gzip.conf
gzip on;
gzip_min_length 1000;
gzip_types text/plain text/css application/x-javascript;