Pra*_*tik 0 php wordpress .htaccess
我在 Stackoverflow 上研究了很多问题,例如 This和 net ,但没有一个解决我的问题。
我在域 X 上工作的多站点运行良好。现在我将它移至我的服务器并替换所有数据库 URL。我也相应地改变wp-config了htaccess。
问题是,当我设置define('MULTISITE', false);为false仅运行基本站点时,对于其他子站点,它会给出404错误。
但我有多站点,我刚刚移动到我的实例,并且必须MULTISITE有多true站点才能工作。
现在当我将其设置为 true 时,我得到了
建立数据库连接时出错
错误。我不知道到底发生了什么。我调试了但无法解决。
我的多站点配置代码
/* Multisite */
define('WP_ALLOW_REPAIR', true);
define('MULTISITE', true);
define('WP_ALLOW_MULTISITE', true);
//define('RELOCATE',true);
define('SUBDOMAIN_INSTALL', false);
define('DOMAIN_CURRENT_SITE', 'localhost');
$base = '/';
define('PATH_CURRENT_SITE', '/smart_facility_linux/');
define('SITE_ID_CURRENT_SITE', 1);
define('BLOG_ID_CURRENT_SITE', 1);
Run Code Online (Sandbox Code Playgroud)
//我的Htaccess(没有任何问题)
RewriteEngine On
RewriteBase /smart_facility_linux/
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]
#RewriteRule ^privacy-statement.html /privacy-statement [L]
Run Code Online (Sandbox Code Playgroud)
我解决了它并且有效 :)
在wp_blogs表中,
旧结构是
Domain : localhost/smart_facility_linux
Path : /
Run Code Online (Sandbox Code Playgroud)
但我将其更改为使其工作如下:
对于根站点:
Domain : localhost
Path : /smart_facility_linux/
Run Code Online (Sandbox Code Playgroud)
对于子站点 1(主站点下的任何子站点,我只是给出了示例):
Domain : localhost
Path : /smart_facility_linux/subsite1/
Run Code Online (Sandbox Code Playgroud)