Tomcat+Nginx實現動靜分離


Tomcat是我們經常用的服務器,輕便快捷,但是數據量大的時候,會影響訪問、響應速度,這時Nginx就出現了。

Nginx可做反向代理、負載均衡、動態與靜態資源的分離的工作,這里我們就用它來做動靜分離

動就是動態頁面

靜就是不改變或者不經常改變的文件,如:css、js和圖片等

首先安裝Nginx

下載地址http://nginx.org/en/download.html,我這里下載的是1.12.2版本,然后解壓到E盤

cmd切換到nginx的目錄下,輸入start nginx或者nginx.exe,之后就可以在資源管理器中看到nginx.exe進程了,

直接在瀏覽器地址欄輸入網址 http://localhost:80,回車,出現以下頁面說明啟動成功

配置Nginx

打開nginx文件conf下的nginx.conf配置文件,進行修改

 

#user  nobody;
worker_processes  1;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;


events {
    worker_connections  1024;
}


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  logs/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;

    #gzip  on;

    server {
        listen       80;
        server_name  localhost;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

location / {
#請求轉發到tomcat,我的端口號是8888 proxy_pass http:
//localhost:8888; index ak47.html index.html index.htm; } # 動態請求的轉發 location ~ \.(jsp|do)$ { proxy_pass http://localhost:8888; proxy_set_header Host $host; } # 靜態請求直接讀取 location ~ .*\.(html|htm|gif|jpg|jpeg|bmp|png|ico|txt|js|css)$ { #靜態資源地址 root E:/nginx/nginx-1.12.2/static; #expires定義用戶瀏覽器緩存的時間為7天,如果靜態頁面不常更新,可以設置更長,這樣可以節省帶寬和緩解服務器的壓力 expires 1d; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } } }

 

然后把項目的war放在tonmcat的webapps文件下

因為我的動態頁面是放在SSM文件夾里面,所有我的靜態資源也要放到

E:/nginx/nginx-1.12.2/static下的SSM文件夾下,通俗的來說就是把webapps里SSM項目下的style和public文件夾剪切到
E:/nginx/nginx-1.12.2/static的SSM下就可以了,不然無法訪問靜態資源。

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM