帖子和子网站上的 WordPress 多站点 404 错误
WordPress Multisite 404 error on posts and subsites
我已经安装了 WordPress 多站点,我的主站点可以正常工作,但是帖子和子站点会转到 404,我搜索了很多,但没有成功。我的 Wordpress 配置在 http://arabyouthsurvey.com/newsite/media-center/
的子目录中
我有两个站点。
站点 1:它正在运行,但它的帖子将转到 404。我也可以访问该站点的 wp-admin。
站点2:彻底404,也无法访问wp-admin
这是我的 htaccess:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /newsite/media-center/
RewriteRule ^index\.php$ - [L]
# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ wp-admin/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ [L]
RewriteRule . index.php [L]
</IfModule>
# END WordPress
我在我的 wp-config.php
中添加了这些行
define('MULTISITE', true);
define('SUBDOMAIN_INSTALL', false);
define('DOMAIN_CURRENT_SITE', 'arabyouthsurvey.com');
define('PATH_CURRENT_SITE', '/newsite/media-center/');
define('SITE_ID_CURRENT_SITE', 1);
define('BLOG_ID_CURRENT_SITE', 1);
我没有安装额外的插件,我尝试停用所有插件,但问题仍然存在。
通过更改 php 我的服务器
配置解决了这个问题
它由 nginx 服务 php 我将其更改为 apache,我的问题消失了。
所以我为这个错误纠结了好久
我将一个现有的工作服务器移到了一个新的 Ubuntu 16.xxx 服务器上,一切都变好了。
Wordpress - 多站点 - 子域安装
主站点正常工作,如 - www.domain.com
子域站点,如 testing.domain.com 或 www.anotherdomain.com
- 可以正常工作,但只能在他们的默认主页上使用
- 会起作用
如果使用 post ID 而不是 pretty,则在页面和 posts 上正确
永久链接。
.htaccess 文件全部按照推荐设置
wp-config.php 全部设置相似
正确配置子域的站点虚拟主机配置文件
<VirtualHost *:80>
DocumentRoot /var/www/html/web04
ServerName subsite.domain.uk
ServerAlias www.subsite.domain.uk subsite.web04.domain.uk
ServerAdmin webmaster@domain.uk
<Directory "/websites/www/html/web04">
order allow,deny
Allow from all
AllowOverride All
Options -Indexes +FollowSymlinks
</Directory>
LogLevel debug rewrite:trace8
ErrorLog ${APACHE_LOG_DIR}/subsite-error.log
CustomLog ${APACHE_LOG_DIR}/subsite-access.log combined
</VirtualHost>
问题是
/etc/apache2/apache2.conf
确保以下行正确并更改
的默认值
AllowOverride None 全部
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
我升级服务器后也发现了这个问题
以下访问所有 WordPress 子站点:
/etc/apache2/apache2.conf
确保以下行正确并更改默认值
AllowOverride None to All
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
我已经安装了 WordPress 多站点,我的主站点可以正常工作,但是帖子和子站点会转到 404,我搜索了很多,但没有成功。我的 Wordpress 配置在 http://arabyouthsurvey.com/newsite/media-center/
的子目录中我有两个站点。
站点 1:它正在运行,但它的帖子将转到 404。我也可以访问该站点的 wp-admin。
站点2:彻底404,也无法访问wp-admin
这是我的 htaccess:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /newsite/media-center/
RewriteRule ^index\.php$ - [L]
# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ wp-admin/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ [L]
RewriteRule . index.php [L]
</IfModule>
# END WordPress
我在我的 wp-config.php
中添加了这些行define('MULTISITE', true);
define('SUBDOMAIN_INSTALL', false);
define('DOMAIN_CURRENT_SITE', 'arabyouthsurvey.com');
define('PATH_CURRENT_SITE', '/newsite/media-center/');
define('SITE_ID_CURRENT_SITE', 1);
define('BLOG_ID_CURRENT_SITE', 1);
我没有安装额外的插件,我尝试停用所有插件,但问题仍然存在。
通过更改 php 我的服务器
配置解决了这个问题它由 nginx 服务 php 我将其更改为 apache,我的问题消失了。
所以我为这个错误纠结了好久 我将一个现有的工作服务器移到了一个新的 Ubuntu 16.xxx 服务器上,一切都变好了。
Wordpress - 多站点 - 子域安装 主站点正常工作,如 - www.domain.com
子域站点,如 testing.domain.com 或 www.anotherdomain.com
- 可以正常工作,但只能在他们的默认主页上使用
- 会起作用 如果使用 post ID 而不是 pretty,则在页面和 posts 上正确 永久链接。
.htaccess 文件全部按照推荐设置 wp-config.php 全部设置相似
正确配置子域的站点虚拟主机配置文件
<VirtualHost *:80>
DocumentRoot /var/www/html/web04
ServerName subsite.domain.uk
ServerAlias www.subsite.domain.uk subsite.web04.domain.uk
ServerAdmin webmaster@domain.uk
<Directory "/websites/www/html/web04">
order allow,deny
Allow from all
AllowOverride All
Options -Indexes +FollowSymlinks
</Directory>
LogLevel debug rewrite:trace8
ErrorLog ${APACHE_LOG_DIR}/subsite-error.log
CustomLog ${APACHE_LOG_DIR}/subsite-access.log combined
</VirtualHost>
问题是
/etc/apache2/apache2.conf
确保以下行正确并更改
的默认值AllowOverride None 全部
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
我升级服务器后也发现了这个问题
以下访问所有 WordPress 子站点:
/etc/apache2/apache2.conf
确保以下行正确并更改默认值
AllowOverride None to All
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>