腾讯云下配置nginx+tomcat解决访问过慢问题

最近试着玩一把腾讯云服务——具体配置就不详细说了,网上很多经验之谈。

本文主要讲一下在配置nginx时遇到访问速度过慢的问题。

nginx配好之后,访问服务器公网IP可以正常访问,但是打开网页奇慢,直接访问tomcat就很快,网上找了找,发现还是配置文件有问题。

nginx目录下conf/nginx.conf原配置为:

#user  nobody;

worker_processes  1;

.....

http {

    upstream tomcatproxy {
server localhost:8081;
    }
    server {
        listen       80;
        server_name  localhost;

        charset utf-8;
        #access_log  logs/host.access.log  main;
        location / {
            proxy_pass http://tomcatproxy/xxx/xxx/xxx.jsp;

        }

    }

}

更改后的配置为:

#user  nobody;

worker_processes  1;

.....

http {

    upstream tomcatproxy {
server localhost:8081;
    }

    server {
        listen       80;
        server_name  127.0.0.1;

        charset utf-8;
        #access_log  logs/host.access.log  main;


        location / {
proxy_pass http://tomcatproxy/xxx/xxx/xxx.jsp;
root   /usr/share/nginx/html;
index  index.html index.htm;
client_max_body_size    1000m;
proxy_set_header   Host             $host;
proxy_set_header   X-Real-IP        $remote_addr;
proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;

        }
#这里配置表示将jsp,do都交给tomcat处理,从而提高访问速度
location ~ (\.jsp)|(\.do)$ {
            proxy_pass http://tomcatproxy;
            proxy_redirect off ; 
            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; 
            client_max_body_size 50m; 
            client_body_buffer_size 256k; 
            proxy_connect_timeout 1; 
            proxy_send_timeout 30; 
            proxy_read_timeout 60; 
            proxy_buffer_size 256k; 
            proxy_buffers 4 256k; 
            proxy_busy_buffers_size 256k; 
            proxy_temp_file_write_size 256k; 
            proxy_next_upstream error timeout invalid_header http_500 http_503 http_404; 
            proxy_max_temp_file_size 128m; 
        }
#加载静态图片..以后如有静态页面,也可以这里加载
location ~ .*\./gif|jpg|jpeg|png|bmp|swf/$  {
            proxy_pass http://tomcatproxy;
proxy_redirect off ; 
            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; 
    client_max_body_size 50m; 
            client_body_buffer_size 256k; 
            proxy_connect_timeout 1; 
            proxy_send_timeout 30; 
            proxy_read_timeout 60; 
            proxy_buffer_size 256k; 
            proxy_buffers 4 256k; 
            proxy_busy_buffers_size 256k; 
            proxy_temp_file_write_size 256k; 
            proxy_next_upstream error timeout invalid_header http_500 http_503 http_404; 
            proxy_max_temp_file_size 128m; 
        }
#加载js,css
        location ~ .*\./js|css/?$ {
            proxy_pass http://tomcatproxy;
    proxy_redirect off ; 
            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; 
    client_max_body_size 50m; 
            client_body_buffer_size 256k; 
            proxy_connect_timeout 1; 
            proxy_send_timeout 30; 
            proxy_read_timeout 60; 
            proxy_buffer_size 256k; 
            proxy_buffers 4 256k; 
            proxy_busy_buffers_size 256k; 
            proxy_temp_file_write_size 256k; 
            proxy_next_upstream error timeout invalid_header http_500 http_503 http_404; 
            proxy_max_temp_file_size 128m; 
        }

    }

}

启动tomcat和nginx,外网访问时速度已和访问tomcat的速度基本相当了。配置详情请自行百度,应该还有不足之处,欢迎指正!

你可能感兴趣的:(腾讯云下配置nginx+tomcat解决访问过慢问题)