1. 程式人生 > >關於寶塔6.5的Apache和nginx共存二三事

關於寶塔6.5的Apache和nginx共存二三事

最新版的寶塔6.5預設不允許Apache和nginx共存只能二選一,但是有時候又必須要兩個都用,比如說我就是Apache做webserver,nginx做做轉發什麼的,偶爾用但是又不是不用,專門用ssh有點麻煩,安裝Apache和nginx任意一個的時候,如果已經有一個了會提示解除安裝另一個,這個時候先全部解除安裝,然後先安裝Apache,新增到任務佇列的時候再點選另一個,也新增到任務佇列安裝就可以了(順序應該沒有關係),但是在寶塔的很多地方很多地方是nginx優先於Apache的,比如phpmyadmin這個東西,目前是剛升級過來的,導致兩個全部裝上以後phpmyadmin的PHP版本是純靜態的,這個時候就要修改nginx的配置檔案,把最下邊的這句註釋掉,就是前邊新增一個#

include /www/server/panel/vhost/nginx/*.conf;

你以為結束了?不,這只是讓nginx不再監聽80埠了,但是Apache還會再監聽nginx需要監聽也可以說必須監聽的888埠,這個時候我們需要修改Apache的配置檔案,從寶塔的檔案管理裡邊編輯

/www/server/apache/conf/extra/httpd-vhosts.conf

把<VirtualHost *:888></VirtualHost>之間的程式碼刪除,使Apache不再監聽888埠,為防止意外發生,請提前備份要編輯的檔案,需要把字尾修改一下,只要不是conf結尾就好。

你以為這樣就行了麼?沒錯,我要告訴你,你以為的是錯的,因為只要你安裝了nginx,寶塔在判斷的時候會預設你使用的nginx,之後的網站配置檔案也會是nginx的,但是我用的是webserver是Apache啊,雖然無傷大雅,但是不太好編輯了,不知道路徑的話根本沒辦法編輯,這個時候就應該修改一下寶塔的程式碼了,開啟

/www/server/panel/class/common.py

大概是在第100行的位置,有一句

session['webserver'] = 'nginx'

改成

session['webserver'] = 'apache'

這樣儲存重啟Apache,nginx服務,之後再重啟面板,就好了,webserver是Apache,phpmyadmin是用nginx,網站的配置檔案也是Apache不用在費勁修改了