帖子和子网站上的 WordPress 多站点 404 错误

Owa*_*lam 1 php wordpress .htaccess multisite

我已经安装了 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$ $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]
</IfModule>

# END WordPress
Run Code Online (Sandbox Code Playgroud)

我在 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); 
Run Code Online (Sandbox Code Playgroud)

我没有安装额外的插件,我尝试停用所有插件,但问题仍然存在。

小智 6

因此,我一直在与这个错误作斗争,我将现有的工作服务器移至新的 Ubuntu 16.xxx 服务器,然后一切都解决了。

Wordpress - 多站点 - 子域安装主站点正常工作,例如 - www.domain.com

子域网站,例如testing.domain.comwww.anotherdomain.com

  • 可以正常工作,但只能在默认主页上
  • 如果使用帖子 ID 而不是漂亮的永久链接,则可以在页面和帖子上正常工作。

.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>
Run Code Online (Sandbox Code Playgroud)

问题是

/etc/apache2/apache2.conf

确保以下行正确并更改默认值

允许将“无”覆盖为“全部”

<Directory /var/www/>
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted 
</Directory>
Run Code Online (Sandbox Code Playgroud)