将永久链接结构更改为postname时,Wordpress localhost会导致404页


Wordpress localhost results in 404 pages when changing permalink structure to postname

我想将我的永久链接结构设置为%postname%,但这样做会使每个页面都转到404页面,在服务器上找不到请求的URL。我使用的是mac,并使用mac的php和apache运行我自己的开发服务器。我按照以下指南启动了服务器:http://www.coolestguidesontheplanet.com/downtown/get-apache-mysql-php-and-phpmyadmin-working-osx-109-mavericks

这些是我采取的步骤,但都没有奏效:

  1. 编辑了我的htaccess

Options +FollowSymlinks
RewriteEngine on

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /~wayne/plugin-dev/
RewriteRule ^index'.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /~wayne/plugin-dev/index.php [L]
</IfModule>
# END WordPress
  1. 通过取消注释确保/etc/apache2/httpd.conf的重写引擎处于打开状态LoadModule rewrite_module libexec/apache2/mod_rewrite.so

  2. 同时确保AllowOverride设置为all。

唯一可行的方法是,如果我使用自定义的permalink结构并放置index.php/%postname%/,但我所有的页面前面都会有一个index.php,我不希望这样。

简单地转到WAMP文件夹。在WAMP中,进入垃圾桶;然后是apache。在apache中有一个文件夹名称conf;在conf中有一个文件名httpd。用记事本打开那个文件,找出这行#LoadModule setenvif_module modules/mod_setenvif.so

通过从此行中删除散列,将启用mod重写功能。然后你可以为你的网站使用任何自定义的永久链接。

如果需要进一步的帮助,请告诉我;我将向您发送WAMP的完整文件或设置。

@Mehreen的答案非常接近正确。我也有这个问题,把头发拔了出来。

以下是您需要做的:转到wamp/bin/apache/apache[YourVersion]/conf在记事本或其他文件中打开httpd.conf。

搜索这两条线:

LoadModule setenvif_module modules/mod_setenvif.so

(和)

LoadModule rewrite_module modules/mod_rewrite.so

如果这些行的开头有hashes(#),请删除它们(这将取消对这些行的注释),这些模块将被启用。

退出WAMP并重新启动。普雷斯托!