<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                ## 一、概述 傳統的基于tomcat的應用,并未做前后端分離,也可以使用nginx,提升架構彈性和安全性; 關于nginx的內容,可以參考: [nginx · FA+Ecloud在線云版產品系通用開發平臺綜合技術入門手冊 · 看云 (kancloud.cn)](http://www.hmoore.net/fang2099/rayplatform/1480958) ## 二、簡單轉發方案 ``` ##http段增加的配置 upstream tomcat{ server localhost:8080; } ##server段增加的配置(已經考慮session失效問題) location / { proxy_pass http://tomcat; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $remote_addr; proxy_cookie_path / /; proxy_set_header Cookie $http_cookie; } ``` ##**維護頁面功能** 后端tomcat應用需要升級維護的時候,提供一個友好的維護頁面功能; 用nginx的502錯誤來定義: ``` ##server段增加的配置 error_page 500 502 503 504 /maintain.html; location = /maintain.html{ index maintain.html; } ``` 然后將自己寫好的maintain.html; 頁面存放到/ngix/html目錄下面,即可; 然后停止tomcat應用,再訪問應用的時候,就會出現維護頁面了: ![](https://img.kancloud.cn/0f/40/0f40b8b824808fcb37406b86744cf0cd_1366x736.png) ## cc攻擊防護 參考以下攻擊防護方案; [安全 · FA+Ecloud在線云版產品系通用開發平臺綜合技術入門手冊 · 看云 (kancloud.cn)](http://www.hmoore.net/fang2099/rayplatform/2043296) ## 三、動靜分離方案 首先、nginx和tomcat各自獨立安裝好,web應用也按照傳統應用部署好; 然后、就是配置nginx的工作了,也就是整合工作; ### 1、JSP頁面請求交給Tomcat處理 在nginx.conf中新建一個location,用正則表達式將所有JSP的請求匹配到該location中; ``` location ~ \.jsp$ { proxy_pass http://localhost:8080; 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 90; proxy_send_timeout 90; proxy_read_timeout 90; proxy_buffer_size 8k; proxy_buffers 6 32k; proxy_busy_buffers_size 64k; proxy_temp_file_write_size 64k; } ``` 核心的語句是:proxy_pass http://localhost:8080; 其他的配置: * proxy_set_header Host $host; 后端的Web服務器可以通過X-Forwarded-For獲取用戶真實IP。 * client_max_body_size 10m; 允許客戶端請求的最大單文件字節數。 * client_body_buffer_size 128k; 緩沖區代理緩沖用戶端請求的最大字節數。 * proxy_connect_timeout 90; Nginx跟后端服務器連接超時時間。 * proxy_read_timeout 90; 連接成功后,后端服務器響應時間。 * proxy_buffer_size 4k; 設置代理服務器保存用戶頭信息的緩沖區大小。 * proxy_buffers 6 32k; proxy_buffers緩沖區。 * proxy_busy_buffers_size 64k; 高負荷下緩沖大小。 * proxy_temp_file_write_size 64k; 設定緩存文件夾大小。 此時訪問http://localhost/index.jsp,會發現跳轉到了Tomcat的頁面了,但是目前圖片、css等靜態文件都是找不到的,所以接下來我們要配置靜態文件的路徑,完成動靜分離; ### 2、動靜分離 對于靜態文件的請求,我們也新建一個location,將常見圖片、css、js等請求匹配到該location中; ``` location ~ \.(html|js|css|gif|jpg|png|bmp|swf)$ { expires 30d; root /usr/lib/tomcat/tomcat/webapps/ROOT; } ``` 配置非常簡單,通過root關鍵字,將匹配到的請求都到tomcat/webapps/ROOT目錄下直接查找。而expires 30d則表示使用expires緩存模塊,緩存到客戶端30天; 配置完后重啟Nginx。再輸入http://localhost/index.jsp,會發現此時的Tomcat頁面已經正常顯示了。我們已經完成了JSP請求與靜態文件請求的動靜分離。 >[danger] 如果配置完仍然發現無法讀取靜態文件,看看訪問http://localhost/tomcat.png時是否顯示403 forbidden。如果是的話就是因為權限問題導致的,這里簡單的解決辦法是把nginx.conf首行的user設為root;
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看