A8DOG

A8DOG

随便写写,记录折腾过程!
telegram

WordPress的多個子目錄網站可以共存,讓你玩得更有趣!

WordPress 子目錄多個網站,其實 WordPress 官方有多站點功能,但是開啟後部分擴展性會限制,可能你們沒有遇到,但是我遇到了,這裡我詳細記錄一下子目錄做網站的操作方法。

https://img.a8dog.com/i/2023/03/31/p3bmcx.webp

這篇文章 29 號就寫了,一直沒有發布。。。

這裡的測試環境為 nginx+php7.4+mysql5.7,一個常規的安裝環境,並且開啟多域名訪問。
開啟多域名訪問在wp-config.phpdefine( 'WP_DEBUG', false ); 下添加代碼即可!

define('WP_SITEURL', 'https://' . $_SERVER['HTTP_HOST']);
define('WP_HOME', 'https://' . $_SERVER['HTTP_HOST']);

子目錄站點也想開啟多域名就不能使用這個方法了,設 blog 為你的子目錄站點,代碼就是:

define('WP_SITEURL', 'https://' . $_SERVER['HTTP_HOST'] . '/blog');
define('WP_HOME', 'https://' . $_SERVER['HTTP_HOST'] . '/blog');

當然這裡修改就要到 blog/wp-config.php 這裡修改。

教程開始:#

當前你的網站根目錄已經有了一個 WordPress 站點,創建一個目錄 blog,上傳一個新的 WordPress 安裝包上去,訪問域名 + blog 安裝即可!

目前 WordPress 已經完全支持到子目錄安裝,以前是不支持的,直接安裝就好了。

注意在填寫數據庫的時候,數據庫前鑽需要修改,當前已經有了一個站點是 wp,那麼你就修改成 wp2 或者 wp3 依此類推。

偽靜態規則#

目前主站點的偽靜態規則是:

location /
{
    try_files $uri $uri/ /index.php?$args;
}
rewrite /wp-admin$ $scheme://$host$uri/ permanent;

加入我們的子目錄站點後,偽靜態規則就是:

location /
{
    try_files $uri $uri/ /index.php?$args;
}
rewrite /wp-admin$ $scheme://$host$uri/ permanent;
location /blog
{
    try_files $uri $uri/ /blog/index.php?$args;
}
rewrite /blog/wp-admin$ $scheme://$host$uri/ permanent;

如果你不只有一個,那麼就需要按需添加你的偽靜態規則。

這個樣子兩個站點就是獨立的數據庫和程序,此場景可以應用於不同模板直接的互通,不用分開管理。
有能力的還可以研究一下兩個站點共用一個用戶數據表等擴展功能。

我覺得最主要的應用場景為大型網站,文章數量多了查詢起來就卡頓,把每個分類單獨支開成一個網站。
這個樣子數據表就小多了,查詢起來也快一點,並且多了豐富的模板擴展性。

載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。