本地 wordpress 安装只显示主页,所有其他页面未找到

Posted

技术标签:

【中文标题】本地 wordpress 安装只显示主页,所有其他页面未找到【英文标题】:Local wordpress install only shows home page, all other pages Not Found 【发布时间】:2013-07-11 10:44:24 【问题描述】:

我正在本地安装一个实时的 wordpress 网站,主页上的所有链接都显示 Not Found 错误。所有 .htaccess 文件都存在。

问题是除了主页之外的每个页面都显示未找到错误,我找不到任何权限问题或其他任何会导致它无法工作的问题。

有什么我可以尝试但我可能会忽略的东西吗?对于这些模糊的问题,我深表歉意,但我不知道从哪里开始。

【问题讨论】:

在wordpress.stackexchange.com 上提问可能会得到更好的答案。 您也可以从 db 更改它:sforsuresh.in/wordpress-update-permalink-database 【参考方案1】:

解决方案涉及此页面中多个答案的组合:

    在您的 http 配置中将 apache 的 AllowOverride 指令更改为 All。 重启 Apache 进入设置->固定链接并点击保存更改

【讨论】:

【参考方案2】:

保存永久链接在大多数情况下确实可以解决此问题,但如果您碰巧刚刚移动了机器并安装了 MAMP 的新副本,则需要检查另一件事。除了更新主机和虚拟主机以及所有这些(对于带有自定义域设置的多个站点),不要忘记打开 MAMP -> 首选项 -> Web 服务器 -> apache 并确保您将文档根目录放在它所在的位置在你的旧机器上而不是默认的 /htdocs/!这就是为我解决它的原因。回答上面提到的 AllowOverride 指令的道具,只有当我在 http.conf 中看到它时,我才注意到文档根目录已关闭。我认为你可以直接编辑它 http.conf 但万一 MAMP 将它用于其他任何事情,我会继续并在 MAMP 首选项中进行更改。

【讨论】:

【参考方案3】:

我想我会添加这个,因为我遇到了同样的问题,但我无法访问 wp-admin 来更新永久链接。

请务必在 wp_options 下编辑您的数据库,以使 siteurl 镜像您的本地主机。我实际上发现即使我这样做了它也没有解决我的问题,所以我在 wp-config 文件中放置了以下几行:

define('WP_HOME','http://example.com');
define('WP_SITEURL','http://example.com');

一旦我添加了这些行,我就可以通过 wp-admin 或 wp-login.php 登录并按照所列答案中的说明更新永久链接。

【讨论】:

【参考方案4】:

您可以通过一种非常简单的方式来做到这一点。 去吧

Settings >> Permalinks >> 并单击“保存更改”而不更改任何内容。

如果它给你.htaccess文件权限问题,你需要设置你的ROOT文件夹(你的wp-content文件夹所在的位置)的读写权限。

然后再去

Settings >> Permalinks >> 并单击“保存更改”而不更改任何内容。

就是这样。希望它能解决问题。

【讨论】:

很高兴听到它有帮助。 这对我有用,虽然我必须先创建一个 .htaccess 文件as documented here @tfantina 很高兴听到它对您有所帮助。 我缺少一个 htaccess 文件。有人忘记将其提交到我的项目中。使用正确的 htaccess 文件,我的路由工作正常。 @moshiuramit 很高兴听到它对您有所帮助 :)【参考方案5】:

请启用rewrite_module。要在 Windows wamp 上启用它,请点击wamp -> Apache ->Apache Module -> check rewrite_module

【讨论】:

【参考方案6】:

另一件事是您可能必须更改您的 .htaccess。 例如,我在本地镜像了我的网站,但在子文件夹中,我不得不更改我的 .htaccess,但 Wordpress 为您提供了所需的代码:

设置 -> 固定链接 -> 见页面底部。

无论如何,提供的代码需要 mod_rewrite 才能正常工作,所以将此答案与上一个结合起来;)

【讨论】:

【参考方案7】:

Apache -> Apache modules -> rewrite_module 并确保勾选此项。 然后保存对永久链接的更改。

【讨论】:

【参考方案8】:

登录到管理面板 (localhost/sitedirectory/wp-admin) 并转到 Settings->Permalinks 并点击 Save Changes。在镜像站点并更新站点 URL 后,通常需要重建永久链接。您无需更改任何设置,只需点击保存,它将使用所选选项重建永久链接。

还要确保在您的本地堆栈上启用了 Apache 模块 mod_rewrite。 IIRC WAMP(和可能的 XAMPP)默认情况下不启用此功能。在 WAMP 中这样做很简单,只需单击任务栏中的 WAMP 图标,然后转到 Apache -> Apache Modules -> mod_rewrite(单击切换),然后重新启动所有服务。

另外我假设您已经更新了站点和主页 url(在wp_options 数据库表或wp-config.php 中)。作为参考,有一个关于此的 Codex 页面:Moving Wordpress

【讨论】:

永久链接上的保存更改为我排序,谢谢 如此简单却又如此有用 这是解决问题的方法。为什么这个答案没有市场解决!!!!!! 另一个提示:如果您已完成上述所有操作但仍无法解决问题,请检查 apache 的 AllowOverride 指令。禁用此选项后,.htaccess 文件将被完全忽略。参考:codex.wordpress.org/Using_Permalinks 为了完整起见,您可能需要将this part 添加到您的答案中。没有它,我无法让它工作。我还发现网上有人说你需要确保你的 .htaccess 文件有 write 访问权限,而不仅仅是读取访问权限,但我还没有测试这是否是一个问题。否则,很好的答案,谢谢。 :)

以上是关于本地 wordpress 安装只显示主页,所有其他页面未找到的主要内容,如果未能解决你的问题,请参考以下文章

Wordpress为主页以外的所有页面提供404错误

只有主页显示所有其他页面在 xampp codeigniter 中显示错误 404

Wordpress革命滑块自定义页面

只有默认永久链接工作wordpress其他成为404错误

无法在主页以外的其他页面中显示图像(wordpress/html/css)

PHP 在Wordpress主页上显示的帖子数量不同于其他页面