溫馨提示×

Ubuntu Apache2如何實現動靜分離

小樊
45
2025-07-18 05:51:08
欄目: 智能運維

在Ubuntu上使用Apache2實現動靜分離,通常是通過配置Apache的mod_proxymod_proxy_http模塊來將動態請求和靜態資源請求分別代理到不同的后端服務器。以下是一個基本的步驟指南:

  1. 安裝Apache2(如果尚未安裝):

    sudo apt update
    sudo apt install apache2
    
  2. 啟用必要的模塊: 啟用mod_proxymod_proxy_http模塊,這些模塊允許Apache作為反向代理。

    sudo a2enmod proxy
    sudo a2enmod proxy_http
    sudo a2enmod proxy_html
    sudo a2enmod headers
    sudo systemctl restart apache2
    
  3. 配置虛擬主機: 編輯你的虛擬主機配置文件,通常位于/etc/apache2/sites-available/目錄下。例如,編輯000-default.conf文件:

    sudo nano /etc/apache2/sites-available/000-default.conf
    
  4. 設置靜態資源目錄: 在虛擬主機配置中,設置一個目錄用于存放靜態資源,并配置Apache直接提供這些資源。

    <VirtualHost *:80>
        ServerAdmin webmaster@localhost
        DocumentRoot /var/www/html
    
        # 靜態資源配置
        Alias /static/ /var/www/static/
        <Directory /var/www/static>
            Require all granted
        </Directory>
    
        # 動態請求代理配置
        ProxyPass /api http://backend_server:port/api
        ProxyPassReverse /api http://backend_server:port/api
    
        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined
    </VirtualHost>
    

    在這個配置中:

    • Alias /static/ /var/www/static//static/ 路徑映射到靜態資源目錄 /var/www/static/。
    • ProxyPass /api http://backend_server:port/apiProxyPassReverse /api http://backend_server:port/api/api 路徑的請求代理到后端服務器。
  5. 重啟Apache: 保存并關閉配置文件后,重啟Apache以應用更改。

    sudo systemctl restart apache2
    
  6. 驗證配置: 確保靜態資源和動態請求都能正確訪問。例如,訪問 http://your_server/static/image.png 應該直接顯示靜態圖片,而訪問 http://your_server/api/data 應該返回后端服務器的數據。

通過以上步驟,你就可以在Ubuntu上使用Apache2實現動靜分離。根據實際需求,你可以進一步調整和優化配置。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女