修复LAMP下wordpress自定义固定连接出现404错误

按照DigitalOcean VPS配置多站点LAMP 配置好LAMP虚拟主机,部署完wordpress,准备关掉去吃饭,突然发下除了首页以外任何页面都不能点开。如果把固定连接换成默认方式则正常。所以认定为Apache rewrite出了问题。

SSH命令允许加载rewrite模块

1
ln -s /etc/apache2/mods-available/rewrite.load /etc/apache2/mods-enabled/

允许AllowOverride

打开/etc/apache2/apache2.conf

找到如下字段

1
2
3
4
5
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>

修改AllowOverride NoneAllowOverride All

2015年2月24日更新

上述设置第二行Options Indexes FollowSymLinks是允许列出网站目录中的文件及子目录,这对网站安全非常不利,所以在此之前加一个#来注释掉。修改后应该如下

1
2
3
4
5
<Directory /var/www/>
#Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>

如果需要加载别的模块,则只需要运行

1
ln -s /etc/apache2/mods-available/模块名称.load /etc/apache2/mods-enabled/

2015年2月24日更新

重启Apache

1
service apache2 restart

大功告成