WordPress開啟多用戶/多站點/多域名模式能夠滿足WordPress在各種應用場景下的需求,對于WordPress程序而言,這是一項簡單的任務,你可以輕松使用它來搭建一個大型內容網站。

WordPress開啟多用戶/多站點/多域名模式只需以下簡單的幾個步驟:

1.開啟多用戶網絡

在網站根目錄下的 wp-config.php 添加:

define(‘WP_ALLOW_MULTISITE’,?true);

刷新網站后臺,訪問 工具 > 配置網絡,根據自己的需要選擇“子域名”或者“子目錄”模式,設置好網站信息,然后點擊“安裝”,只有新安裝的WordPress,并且綁定了域名,

這時候才可以選擇“子域名”模式。

如果你選擇是的“子域名”,安裝后,請將下面的代碼添加到網站根目錄下的 wp-config.php 下:

define(‘MULTISITE’, true);

define(‘SUBDOMAIN_INSTALL’, true);

define(‘DOMAIN_CURRENT_SITE’, ‘你的域名’);

define(‘PATH_CURRENT_SITE’, ‘/’);

define(‘SITE_ID_CURRENT_SITE’, 1);

define(‘BLOG_ID_CURRENT_SITE’, 1);

如果選擇的是“子目錄”,則添加:

define(‘MULTISITE’, true);

define(‘SUBDOMAIN_INSTALL’, false);

define(‘DOMAIN_CURRENT_SITE’, ‘你的域名’);

define(‘PATH_CURRENT_SITE’, ‘/’);

define(‘SITE_ID_CURRENT_SITE’, 1);

define(‘BLOG_ID_CURRENT_SITE’, 1);

2.添加偽靜態規則

如果你的服務器使用的是Apache環境,使用下面的代碼替換網站根目錄下的 .htaccess 里面的所有代碼。

子域名模式下的規則代碼:

RewriteEngine On

RewriteBase /

RewriteRule ^index.php$ – [L]

 

# add a trailing slash to /wp-admin

RewriteRule ^wp-admin$ wp-admin/ [R=301,L]

 

RewriteCond %{REQUEST_FILENAME} -f [OR]

RewriteCond %{REQUEST_FILENAME} -d

RewriteRule ^ – [L]

RewriteRule ^(wp-(content|admin|includes).*) $1 [L]

RewriteRule ^(.*.php)$ $1 [L]

RewriteRule . index.php [L]

子目錄模式下的規則代碼:

RewriteEngine On

RewriteBase /

RewriteRule ^index.php$ – [L]

 

# add a trailing slash to /wp-admin

RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]

 

RewriteCond %{REQUEST_FILENAME} -f [OR]

RewriteCond %{REQUEST_FILENAME} -d

RewriteRule ^ – [L]

RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L]

RewriteRule ^([_0-9a-zA-Z-]+/)?(.*.php)$ $2 [L]

RewriteRule . index.php [L]

如果是Nginx環境,則在域名配置文件server區域最后一個}之前加上以下規則,子域名和子目錄模式通用:

rewrite ^/([_0-9a-zA-Z-]+/)?wp-admin$ /$1wp-admin/ permanent;

if (-f $request_filename){

set $rule_2 1;

}

if (-d $request_filename){

set $rule_2 1;

}

if ($rule_2 = “1”){

#ignored: “-” thing used or unknown variable in regex/rew

}

rewrite ^/([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) /$2 last;

rewrite ^/([_0-9a-zA-Z-]+/)?(.*.php)$ /$2 last;

rewrite /. /index.php last;

記得重啟Nginx。
完成上述操作后,請重新登陸后臺

3.設置COOKIE

這步操作很重要,如果不設置的話,之后登錄網站后臺會提示“錯誤:Cookies被阻止或者您的瀏覽器不支持。要使用WordPress,您必須啟用Cookies。”,在網站根目錄下的 wp-config.php 添加:

define( ‘COOKIE_DOMAIN’, ” );

4.多域名模式

在剛才添加好的子域名上點編輯,把里面的“站點地址(URL)”修改為指定的獨立域名,保存。如果使用nginx環境,則在域名配置文件的server_name部分加上要使用的其他獨立域名,重啟nginx即可。
如果要自動匹配多域名,可以將域名配置文件的server_name部分改為:

server_name? ~^(www.)?(.+)$;

這樣即可實現Nginx多域名通配,任何用戶只需設置好自己的域名,將解析指向該服務器即可,而無需管理員手動添加域名。

5.故障排除

如果安裝主題或插件是出現:“安裝失敗:無法復制文件。”可嘗試修改目錄權限或者用戶組。
修改目錄權限,以LNMP為例:

chmod 777 /home/wwwroot/網站目錄 -R

修改用戶組:

chown -R www:www /home/wwwroot/網站目錄/

或參考:要執行請求的操作,WordPress需要訪問您網頁服務器的權限

2.如果出現后臺不顯示主題,或只顯示一個主題等,請參考:

聲明:本站所有資源由用戶發布分享以及互聯網轉載,只作為宣傳購買原版的參考,版權爭議與本站無關;如果你有什么不錯的資源,也可以提供給本站免費幫你發布宣傳;本站不對任何資源負法律責任以及索取相關費用,您若發現本站侵犯了你的版權利益,請聯系本站刪除處理!謝謝!