问题描述

突然间,我去了我的 WordPress 网站,所有的页面给我一个 404 页面找不到页面。我假设问题在于永久链接的结构,我可以发誓我没有接触。永久链接设置是 「月份和名称」 。

我已经在线研究了这个问题的类似实例,很多与.htaccess 文件有关?我试着找到,但我不能。也许它被删除了吗?它应该在哪里找到。

任何建议将会有所帮助

当然我也可以看到隐藏的文件。

最佳解决方案

.htaccess 是一个隐藏文件,因此您必须将所有文件设置为在 ftp 中可见。

我建议你将你的永久链接结构恢复为默认值 (?p = ID),以确保.htaccess 是问题。

之后,您可以再次设置 「月份和名称」 结构,看看它是否有效。

PS:你升级到 3.1 了吗在这种情况下,我看到一些有插件问题的人。

次佳解决方案

如果您使用除日期和名称,月份和名称,数字,邮政名称或自定义结构之类的默认值以外的永久链接,则该问题非常简单,您只需要

登录到您的管理区域:Settings > Permalinks 哪个应该是:http://yoursite.com/wp-admin/options-permalink.php

选择 Default 永久链接设置,然后保存更改

然后,您可以将其重新发送到您之前的其他固定链接选项,或将其保留为 default,因为您希望

请注意,当您将站点从域或位置移动到另一个站点时,可能会发生此问题。

第三种解决方案

基本上应该存在.htaccess 文件,httpd.conf 应该是正确的。

在我的情况下,我更改了文件/etc/httpd/conf/httpd.conf 中的文件:

<Directory "/var/www/html">

换行是:

AllowOverride None

AllowOverride All

并重新启动 Web 服务器。

第四种方案

这个错误是由于 apache httpd.conf 文件中禁用了重写 mod 而导致的,只是取消注释并享受 seo 友好的永久链接

第五种方案

我希望这将在 wordpress 问题上工作对于 wordpress 网站,你必须在管理部分做,并按照一些步骤:

  1. 转到管理设置。

  2. 点击永久链接,然后在单选按钮中选择帖子名称。

  3. 向下滚动,您将在这里看到.htacces 代码。

    <IfModule mod_rewrite.c>
        RewriteRule ^index.php$ - [L]
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteCond %{REQUEST_FILENAME} !-d
        RewriteRule . /wordpress/index.php [L]
    </IfModule>
    
  4. 将代码复制并粘贴到.htaccess 文件中。

第六种方案

如果默认行为 (example.com/?p=42) 正在运行,您应该:

  • 更改为首选的永久链接样式:Admin: Settings > Paramalinks,然后单击保存。有时它解决了这个问题。如果没有:

  • 验证文件/path/to/wordpress/.htaccess 是否已更改,现在包括行 RewriteEngine On 。如果不是,这是 Wordpress 权限问题。

  • 验证’rewrite’ 模块是否已加载:创建一个 PHP 文件

    <?php
      phpinfo()
    ?>
    

    在其中,在浏览器中打开它并搜索 mod_rewrite 。它应该在’Loaded Modules’ 部分。如果不是,启用它 – 查看您的 apache 默认 index.html 文件的详细信息 – 在 Ubuntu 中,您可以使用帮助程序 a2enmod

  • 验证 apache 服务器是否正在查看.htaccess 文件。打开 httpd.conf – 或者它的’s Ubuntu’s 替代品,/etc/apache2/apache2.conf 。在它里面,你应该有这样的东西

    <Directory /path/to/wordpress>
      Options Indexes FollowSymLinks
      AllowOverride All
      Require all granted
    </Directory>
    
  • 进行这些更改后,请勿忘记重新启动 Apache 服务器。 sudo service apache2 restart

第七种方案

  • 检查.htaccess 上的目录是否正确

  • 检查字段”siteurl” 和”home” 是正确的

第八种方案

如果您有 FTP 访问您的帐户:

首先,登录到您的 wp-admin 并转到设置> 固定链接

你应该看到底部的东西说:

「如果您的.htaccess 文件是可写的,我们可以自动执行此操作,但这不是您的.htaccess 文件中应该具有的 mod_rewrite 规则。单击该字段,然后按 CTRL + a 选择所有。

如果这是真的,请执行以下操作:

  1. 进入您的 FTP 客户端的首选项,并确保显示隐藏的文件 (取决于您的 FTP 客户端) – 如果不这样做,您将无法找到您的 htaccess 文件

  2. 转到您的 wp-admin,wp-content,wp-includes 目录所在的文件夹。检查.htaccess 文件。如果存在,跳到步骤 4

  3. 如果不存在,请在您的 FTP 程序中创建一个新的空白文件.htaccess

  4. 将.htaccess 文件的 CHMOD 更改为 666(您希望如何执行此操作的偏好)

  5. 返回到您的 「固定链接」 页面,并编辑所需的链接结构。问题应该解决!

  6. 完成后,确保将 htaccess 文件的 chmod 更改回 644 。

只是有同样的问题,它似乎立即解决它!祝你好运!

参考文献

注:本文内容整合自 Google/Baidu/Bing 辅助翻译的英文资料结果。如果您对结果不满意,可以加入我们改善翻译效果:薇晓朵技术论坛。