当前位置: 首页 > 知识库问答 >
问题:

只有默认permalinks工作wordpress其他成为404错误

慕金林
2023-03-14

我的问题是在我的wordpress站点中,只有默认的永久链接在工作。。当我更改永久链接时,所有页面都找不到。。只显示主页。

当我将永久链接更改为邮名. htaccess内容更改为

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

默认情况下是这样的

# BEGIN WordPress

# END WordPress

还尝试使用以下命令获取mod_rewrite的状态

in_array( 'mod_rewrite', apache_get_modules())

它返回1,mod_rewrite在我的服务器上启用,也使用phpinfo()检查。我已经浏览了互联网上所有的文件...请帮我解决这个问题。我的主机服务器是Goaddy...

共有3个答案

宰父浩漫
2023-03-14

我有完全相同的问题,并通过运行解决了它

sudo a2enmod rewrite

然后重启apache。显然,这个问题是由mod_rewrite可能无法在ubuntu上正常工作引起的。

我在这里找到了解决办法

方和豫
2023-03-14

它可能是数据库中一个损坏的重写\u规则字段。

我将“Yoast SEO”安装到了一个实时站点,这彻底破坏了它。我禁用了插件,但它没有恢复工作。只有默认的永久链接才能工作。

和其他人一样,我也尝试了一些平常的事情——检查.htaccess,确保mod\u rewrite在服务器上工作,再次保存永久链接设置,但没有任何效果。主页将被加载,wp admin页面将被加载,但其他一切都只是加载“最新帖子”默认页面。

最后,数据库中wp\u选项rewrite\u规则字段出了问题。

我有三个版本的站点(本地、暂存和生产),都来自一个SVN库,所以我知道这不是文件问题。但只有本地开发版本起作用。

我用本地开发站点的工作站点替换了破碎的活动站点的rewrite_rules字段的内容,并且成功了。

真正奇怪的是,删除rewrite\u rules字段并让WordPress重新构建它并没有解决问题。只有用以前工作版本的网站内容进行替换,才能达到目的。

我仍然对此感到困惑,如果我进一步发现问题,我将编辑此回复。

巫坚白
2023-03-14

如果您在Ubuntu上,请编辑文件/etc/apache2/apache2.conf(这里有一个/var/www的示例):

<Directory /var/www/>
        Options Indexes FollowSymLinks
        AllowOverride None
        Require all granted
</Directory>

并将其更改为:

<Directory /var/www/>
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
</Directory>

还要检查您网站的Apache配置文件/etc/apache2/sites available/your_site.conf:

<Directory /var/www/your_site_path/>
    AllowOverride None
</Directory>

并将其更改为:

<Directory /var/www/your_site_path/>
    AllowOverride All
</Directory>

你需要做sudo a2enmod重写来启用模块重写

然后,

sudo服务apache2重启

希望这对你有所帮助!

 类似资料:
  • 当您的系统里同时安装了 java 6 及 java 7 的时候,系统默认使用的 java 版本不一定是 java 7. 运行命令 java -version, 查看输出: 如果输出中显示 “java version “1.7.0_xx”, 那么您默认的 java 版本是 java 7. 您可以略过下面的步骤。 如果输出中显示 “java version “1.6.0_xx”, 那么您默认的 jav

  • 此组件起作用: 如果我移除最后一行,就不起作用了。 我想,我不明白es6语法中的一些东西。它不是必须不带“default”符号导出吗?

  • Note: Seafile 服务器 5.0.0 之后,所有配置文件都移动到了统一的 conf 目录下。 了解详情. 从专业版服务器的 2.0.5 版本开始,Seafile 可以使用兼容 S3 的云存储(比如 OpenStack/Swift)作为后端。这篇文档将以使用 Swift 为例。 准备工作 首先您需要为 Swift 启用 S3 的模拟中间件。有关说明可以参考以下链接: http://www.

  • 我是库伯内特斯的新手。我正在为K8S使用GKE托管服务。有2个部署nginx、httpd,并为这2个部署创建了NodePort服务。 我正在尝试为服务创建入口规则。nginx入口控制器是通过helm安装的。我有一个来自freenom的域,并将Google云DNS设置为使用静态公共IP。当我尝试点击入口URL(domain/nginx)时,它会给出: "默认后端-404" 部署: 服务: 与http

  • 我有一些代码,使用帖子特色图像作为DIV的背景... 很简单,但是我需要在这个背景上为任何没有特色图像集的帖子设置一个默认图像。 修改我上面的代码可能吗? 比如说... 如果文章有特色图片-显示它。 如果帖子没有特色图片-显示default.jpg。

  • npm packages 在某些时候,你的项目很可能依赖于从npm安装到你的node_modules文件夹中的软件包。 与Webpack和Browserify这样的其他捆绑包不同,Rollup不知道如何打破常规去处理这些依赖。 - 我们需要添加一些配置。 让我们添加一个简单的依赖 the-answer,它输出对生活、宇宙及其它一切的答案 npm install the-answer # or `n