错误404帖子名称永久链接wordpress

时间:2017-11-10 14:34:26

标签: wordpress apache .htaccess server httpd.conf

我刚刚将WordPress网站从Windows迁移到Linux服务器。除了将永久链接设置为/%postname%/的帖子外,一切似乎都有效。我认为这是mod_overwrite问题。

我已将httpconf文件从AllowOverride None更改为AllowOverride All

然后重置服务器以确保它生效。

我的.htaccess看起来像这样:

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

我在专用服务器上运行CentOS5上的Apache 2.2。

要添加:除了包含这些自定义永久链接的帖子外,所有页面都正常工作。

我为.htaccess

设置了666的权限

2 个答案:

答案 0 :(得分:4)

同样的事也发生在我身上。原来,.htaccess对我来说不是问题。问题出在服务器配置文件中。

适用于AWS EC2服务器:

第1步:编辑配置文件

sudo nano /etc/httpd/conf/httpd.conf

编辑此文件并更改

<Directory /var/www/html/wordpress/>
    AllowOverride None
 </Directory>

<Directory /var/www/html/wordpress/>
    AllowOverride All
 </Directory>

请注意,/var/www/html/wordpress/是托管WordPress项目的根文件夹的路径。

第2步:重启服务器

在对.conf文件进行更改后,请不要忘记重新启动服务器。

sudo service httpd restart

对于Ubuntu服务器:

第1步:编辑配置文件

sudo gedit /etc/apache2/apache2.conf

编辑此文件并更改

<Directory /var/www/html/wordpress/>
    AllowOverride None
 </Directory>

<Directory /var/www/html/wordpress/>
    AllowOverride All
 </Directory>

请注意,/var/www/html/wordpress/是托管WordPress项目的根文件夹的路径。

第2步:重启服务器

在对.conf文件进行更改后,请不要忘记重新启动服务器。

sudo service apache2 restart

答案 1 :(得分:0)

保持AllowOverride无。

删除.htaccess文件以及任何一组混乱规则的痕迹,只需在虚拟主机中添加:

FallbackResource /index.php

既不需要mod_rewrite,也不需要.htaccess。

通过添加per-dir配置,您基本上会使您的生活变得复杂。为了什么,一切都会变得更难?通过更改文件进行动态更改? .htaccess适用于需要修改目录配置的非管理员用户。

由于您是管理员,因此请在Virtualhost中配置所有可能的内容。

向每个人提供对文件的rw权限绝对不是要走的路。 httpd不需要对任何东西进行写访问。