突然之间,我去我的WordPress网站,所有的页面给了我一个404页面未找到页面。我假设问题在于永久链接结构,我可以发誓我没有碰到。永久链接设置是“月份和名称”。WordPress给我404页面没有找到所有页面除了主页
我在网上研究过类似的这个问题的实例,很多它与.htaccess
文件有关?我试图找到,但我不能。也许它被删除了吗?它应该放在哪里。
任何建议将有帮助
当然,我可以看到隐藏的文件。
突然之间,我去我的WordPress网站,所有的页面给了我一个404页面未找到页面。我假设问题在于永久链接结构,我可以发誓我没有碰到。永久链接设置是“月份和名称”。WordPress给我404页面没有找到所有页面除了主页
我在网上研究过类似的这个问题的实例,很多它与.htaccess
文件有关?我试图找到,但我不能。也许它被删除了吗?它应该放在哪里。
任何建议将有帮助
当然,我可以看到隐藏的文件。
.htaccess是一个隐藏文件,因此您必须将所有文件设置为在您的ftp中可见。
我建议你将你的永久链接结构返回到默认值(?p = ID),以确保.htaccess是问题所在。
之后,你可以简单地设置“月份和名称”结构,看看它是否工作。
PS:你升级到3.1了吗?在这种情况下,我看到一些有插件问题的人。
对我来说,家是问题所在。我修复它,一切恢复工作。 ObrithankyouJoséCarlos。 – 2014-09-04 10:37:52
如果你有FTP访问您的帐户:
首先,登录您的wp-admin并转到设置>固定链接
您应该在底部看到如下内容:
“如果您的.htaccess文件是可写的,我们可以自动执行此操作,但并不是这些是您的.htaccess文件应具有的mod_rewrite规则。点击字段,然后按Ctrl + A选择所有“
如果这是真的请执行下列操作:
走进首FTP客户端,并确保隐藏文件显示(根据不同在你的FTP客户端上) - 如果你不这样做,你将无法找到你的htaccess文件
转到您的wp-admin,wp-content,wp-includes目录所在的文件夹。检查.htaccess文件如果存在,跳到步骤4
如果它不存在,你叫的.htaccess
更改CHMOD为.htaccess文件到FTP 666程序(您的喜好你想如何做到这一点)
回到你的固定链接页面并编辑你想要的链接结构。问题应该解决!
确保在完成后将htaccess文件的chmod更改回644。
刚刚有同样的问题,它似乎立即修复!祝你好运!
“mod_rewrite”这是问题,我忘了启用它!谢谢:) – Chemaclass 2016-07-20 11:56:00
这个错误导致由于Apache的httpd.conf文件中重写国防部的残疾人,只是取消它,享受搜索引擎友好的永久链接
我有同样的问题,所以我再次删除了Apache,使之与问题解决了。
修复这个问题很简单,如果你使用比其他固定链接的如Day and name
default
,Month and name
,Numeric
,Post name
或Custom Structure
,你只需要
登录到你的管理区:Settings > Permalinks
这应该是: http://yoursite.com/wp-admin/options-permalink.php
选择Default
永久设置,然后保存更改
然后你就可以再次回到它以前的其他固定链接选择或保持它作为default
的哟希望
注意,当你从一个域或位置到另一个移动你的网站上的这个问题可能发生。
这有点帮助我,我有一些数据库错误,然后我所有的网页是404。切换永久链接选项到另一个选项(如普通),然后回到默认选项固定我的所有链接! – PaulBGD 2017-04-15 03:28:47
很高兴听到:) – 2017-04-16 11:41:58
完美答案!!! +1 :) – SagarPPanchal 2017-06-27 19:16:30
在WordPress管理界面执行以下操作:
进入管理设置
点击固定链接并选择单选按钮后名称。
向下滚动,你会在这里看到.htaccess
代码。
<IfModule mod_rewrite.c>
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /wordpress/index.php [L]
</IfModule>
.htaccess
文件中。我在哪里可以找到这个?永久链接中没有这样的东西。 – 2014-04-17 06:13:25
@Boris_yo据我所知,只有当你的'htaccess'文件不是'可写入的时候,规则才会显示出来。如果它是wordpress的话,它就会自己写出来... – 2015-09-16 03:43:37
这个答案太棒了!除非在Linux中使用WP,否则不会知道它。非常感谢 – 2016-05-12 16:45:23
基本上.htaccess文件应该存在,并且httpd.conf应该是正确的。
在我的情况,我在部分更改的文件/etc/httpd/conf/httpd.conf中:
<Directory "/var/www/html">
行已变更为:
AllowOverride None
到
AllowOverride All
然后重新启动Web服务器。
,这对我有所帮助。在我的情况下,AllowOverride设置丢失。 – rag 2017-05-29 06:40:01
我安装了mod_rewrite来解决这个问题。下面的链接提供了一个安装指南: - http://www.iasptk.com/enable-apache-mod_rewrite-ubuntu-14-04-lts/
如果默认的行为(example.com/?p=42
)正在工作,你应该:
Admin: Settings > Paramalinks
,然后点击保存。有时它修复了这个问题。如果没有:/path/to/wordpress/.htaccess
已更改,现在包含行RewriteEngine On
。如果不是,那是Wordpress权限问题。验证“重写”模块加载:创建一个PHP文件,
<?php
phpinfo()
?>
它,在浏览器中打开它,然后搜索mod_rewrite
。它应该在'Loaded Modules'部分。 如果不是,启用它 - 看看你的Apache默认index.html
文件的详细信息 - 在Ubuntu中,你与帮手a2enmod
。
确认Apache服务器正在查看.htaccess
文件。打开httpd.conf
- 或者它是Ubuntu的替代品,/etc/apache2/apache2.conf
。在这里面,你应该有类似
<Directory /path/to/wordpress>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
做了这些改变之后,别忘了重新启动Apache服务器。 sudo service apache2 restart
您可能会在网络主机设置中禁止.htaccess。 设置为默认永久链接将在这种情况下工作。
我不久前曾遇到过这个问题。我已经重置我的固定链接到默认或只是保存它,更新主题/核心到(4.7.4)/插件,停用所有插件,切换到默认主题,优化数据库,.htaccess已经是默认的,检查文件权限,mod_rewrite是开启。
到目前为止没有什么作品,除了旧版页面之外,其他作品是帖子,新页面,/联系页面。
基本上,网页/网址没有工作是:
/breeding
/training
/training/*
/breeding/*
最终,我发现在根文件夹这些文件:
/breeding.php和/training.php
我重命名了这两个文件,上面的页面都起作用了。
,只需转到设置 - >永久在你的仪表板,然后在最后保存更改按钮\
这其中大部分问题由简单地参观设置固定的时间 - >永久链接在WordPress管理页面点击保存(如同其他几个已经指出的答案)。访问此页面时,WordPress会重写.htaccess
文件中的指令,这个文件可以神奇地解决问题。移动站点后,该问题经常发生(站点中断,因为.htaccess
被遗忘或需要更新设置)。
如果WordPress没有正确的权限来编写.htaccess
文件,则保存设置时会在页面顶部显示通知,并在底部显示更多说明。在这种情况下,您需要自己编辑.htaccess
文件,或者更好地修复该文件的权限。该文件位于WordPress安装的根目录下。 cd
进入目录并且sudo chmod 644 .htaccess
。您可能还想检查文件是否属于正确的组,并且需要更改chown
。如果您不知道如何做,请询问您的托管服务提供商。
如果你在共享主机,这可能是你所能做的。如果你仍然有这个问题,你可能想与你托管服务提供商的支持。否则,请确保在服务器上启用了.htaccess
文件,因为已经建议了@georgeos。请注意,并不总是使用httpd.conf
(Ubuntu indicates it is deprecated,但the official Apache docs still says it is often the main configuration file)。 /etc/httpd/conf/httpd.conf
和/etc/apache2/apache2.conf
似乎是这个文件最常见的地方。找到公用文件夹的块,通常为<Directory /var/www/>
,并确保AllowOverride
指令设置为All
。如果它设置为None
,那么服务器将忽略您的.htaccess
文件。
案例1: - 让我们想想如果将网站从一个托管迁移到另一个托管,如果看到此类问题。
解决方案: - 只需转到旧的服务器复制.htaccess文件代码,然后通过新的服务器.htaccess文件。 99%,我会工作。
如果你的WordPress安装在一个子文件夹(例如:https://www.example.com/subfolder)在WordPress改变这一行.htaccess
RewriteRule . /index.php [L]
到
RewriteRule . /subfolder/index.php [L]
通过这样做,你是在告诉服务器查找在WordPress文件夹(例如https://www.example.com/subfolder)中使用WordPress index.php
而不是公用文件夹(例如https://www.example.com)。
可以很容易地解决这个问题只需按照以下 一些步骤,如果访问登录您的管理仪表板,然后简单地
Go to Settings » Permalinks, and simply click on Save Changes button
。
这将更新您的永久链接设置和刷新重写规则。在大多数情况下,这个解决方案修复了WordPress的帖子404错误。但是,如果它不适合你,那么你可能需要手动更新你的.htaccess文件。
登录到服务器使用FTP,并修改的.htaccess文件它位于在文件夹一样/可湿性粉剂内容/和/ WP-包括/所在, 只是简单地把代码娄同一位置在的.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
希望这将解决这个问题。
我在问这是怎么发生的,但是这解决了我的问题......谢谢 – Kurohige 2017-12-05 13:51:51
这通常发生在你的.htaccess文件被删除或者重写规则出错的时候@Kurohige – 2017-12-06 05:57:08
如果所有这些都不起作用,你的.htaccess是正确的,并且永久链接技巧没有用,你可能没有启用你的apache2 rewite mod。
我跑了这一点,我的问题解决了:
sudo a2enmod rewrite
建议你问这对http://wordpress.stackexchange.com/为好。 – 2011-03-03 15:20:30