【问题标题】:500 internal server error when changing permalink to /%category%/%postname%/将永久链接更改为 /%category%/%postname%/ 时出现 500 内部服务器错误
【发布时间】:2012-01-03 15:33:24
【问题描述】:

在 wordpress 中更改永久链接时出现内部服务器错误。我所做的是

我更改了永久链接设置下的“自定义结构”并给出了 /%category%/%postname%/

它要求我放置一个包含以下内容的 .htaccess:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase ./
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . ./index.php [L]
</IfModule>

然后我的网站变得无法访问,我收到内部服务器错误。 我启用了我的 mod_rewrite。

非常感谢任何帮助。提前致谢。

【问题讨论】:

  • 你能登录管理面板吗?是那个实时站点还是您在本地主机上工作? .htaccess 文件中还有其他代码吗?如果您可以登录管理面板,请访问永久链接设置页面,然后访问您的网站。
  • 感谢您的回复 Marko.. 我在本地做。我的 .htaccess 文件中没有任何其他代码。放入 htaccss 后,我无法登录管理面板,我也收到内部服务器错误。除了上面提到的之外,我是否需要在 .htaccess 文件中进行任何其他更改。
  • 在可以处理 .htaccess 的服务器上试一试。您的本地服务器很可能不知道如何使用 .htaccess。
  • 如果我将 302 重定向或任何其他重定向放在 .htaccess 文件中,它就可以工作。如果我把这个单独放在一边,它就不起作用了。

标签: wordpress permalinks


【解决方案1】:

你试图重写 url 两次:

  1. .htaccess 文件
  2. WP 永久链接设置

摆脱你的 .htaccess 文件 (或评论第一行)

<IfModule mod_rewrite.c>
# RewriteEngine On
RewriteBase ./
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . ./index.php [L]
</IfModule>

希望这会有所帮助。

【讨论】:

  • 谢谢,这对我有用。 .htaccess 中现有的RewriteBaseRewriteRule 行被设置为重定向到子文件夹(我的站点位于服务器上的子文件夹中,但现在我为其设置了域名)。这些行在# BEGIN Wordpress 行之前,因此当我在设置中更改站点名称时,WP 没有更新它们。 WP 本身在 # BEGIN Wordpress 之后插入和管理正确的行。所以删除这些较早的行解决了这个问题。
【解决方案2】:

最后我发现问题出在 wp_options 表中的 home 条目。

房屋价值设置为。/我不知道它是如何设置的。当我删除它时,永久链接可以完美运行。不,我的主页条目是空白“”

希望对某人有所帮助..

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-08-22
    • 2017-09-12
    • 2014-10-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多