【问题标题】:wordpress multisite not working on Localhostwordpress 多站点无法在本地主机上运行
【发布时间】:2015-09-03 05:03:40
【问题描述】:

我已经在我的本地主机上以多站点模式安装了 wordpress。我在 Windows 10 上使用 WAMP 服务器。

父站点运行良好,可以访问。但是,当我尝试访问子站点时,它说在服务器上找不到 URL。既适用于网站,也适用于它们的后端。

我已按照 wordpress 指定的网络设置说明进行操作。

我认为这是 mod_rewrite 的问题,当我取消注释时在我的 httpd.conf 中如何

#LoadModule rewrite_module modules/mod_rewrite.so

我收到内部服务器错误

我的 htaccess 文件是

# BEGIN WordPress
<IfModule mod_rewrite.c>

RewriteEngine On
RewriteBase sandbox/mainsite/
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

另一个奇怪的事情是,当我将 wordpress 中的永久链接更改为自定义结构并点击保存时,它不会被保存并恢复到以前的设置。

有什么想法吗?

【问题讨论】:

  • 您需要启用mod_rewrite,由于&lt;IfModule mod_rewrite.c&gt; 检查,您的.htaccess 文件区域的内容将被忽略。
  • @doublesharp 所以我从 .htaccess 中删除了 并启用了 mod_rewrite,我得到一个内部服务器错误。
  • 您可以保留&lt;IfModule&gt;,因为它只是在处理其中的规则之前检查扩展是否已加载,因此您只需启用mod_rewrite。检查您的错误日志以获取详细信息,但也许您没有mod_write
  • 我通过取消注释 #LoadModule rewrite_module modules/mod_rewrite.so 行启用了 mod_rewrite。启用它时,我仍然收到内部服务器错误。这让我很困惑。
  • [Thu Sep 03 12:17:07.506490 2015] [core:alert] [pid 36540:tid 1096] [client ::1:55389] E:/websites/sandbox/mainsite/.htaccess : RewriteBase: 参数不是有效的 URL 这是来自日志的错误

标签: wordpress apache .htaccess mod-rewrite


【解决方案1】:

好的,已解决问题。 问题是 Rewrite Base 没有读取正确的 URL。

在它起作用之前添加一个“/”。所以我改变了

RewriteBase sandbox/mainsite/

RewriteBase /sandbox/mainsite/

【讨论】:

    猜你喜欢
    • 2016-09-16
    • 1970-01-01
    • 1970-01-01
    • 2020-05-27
    • 1970-01-01
    • 1970-01-01
    • 2014-12-20
    • 2018-07-21
    • 2019-08-17
    相关资源
    最近更新 更多