WordPress永久链接不起作用

时间:2014-04-01 18:04:55

标签: wordpress apache permalinks

我正在尝试通过WordPress创建非常永久链接,并且我一直收到404错误。我已经浏览了互联网,我找不到任何解决方案。我之前从来没有遇到过这样的问题,所以我完全难过了。

主机位于Network Solutions下。我打电话给他们,他们给我发了这个链接:http://www.networksolutions.com/support/PHP-ini-for-UNIX-Shared-Hosting-FAQ

我尝试过的: 1.将php.ini文件添加到我的root。 2.将php.ini文件添加到cgi-bin文件夹 3.将重写命令添加到我的.htaccess文件(位于我网站的根目录中)。

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

在每次这些之后,我重新保存了永久链接设置以刷新更改。

我仍然遇到404错误。

2 个答案:

答案 0 :(得分:13)

我在作为登台服务器运行的Ubuntu 14.04服务器上遇到了同样的问题。 在这种情况下,默认情况下未启用重写模块;所以分页和“非丑陋”的永久链接都不起作用(因为他们依赖.htaccess重写规则来工作)。

您必须编辑Apache conf文件(在Ubuntu 14.04中:/etc/apache2/apache2.conf)并将AllowOverride设置从None更改为FileInfo

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

您可能需要启用重写模块:

sudo a2enmod rewrite

要完成,您需要重新启动

sudo service apache2 restart

现在,这已经困扰了我一个月左右,所以对解决方案的赞誉如下: https://askubuntu.com/questions/48362/how-to-enable-mod-rewrite-in-apache

答案 1 :(得分:5)

使用FTP登录您的服务器,并修改.htaccess文件,该文件位于/ wp-content /和/ wp-includes /所在文件夹所在的同一位置。您可以做的最简单的事情是通过将权限更改为666来临时使文件可写。然后重复原始解决方案。不要忘记将权限更改回660.您也可以在.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

另一种解决方案:将index.php放在自定义永久链接结构的开头,例如:

/index.php/%year%/%monthnum%/%day%/%postname%/