一
最近为了让自己的博客更加完善,我做了各个方面的优化措施,其中之一就是修改博文永久链接的结构形式。
本来这个设置在wordpress里面应该是相当容易的,直接进入settings,找到permalink设置页面,改成自己想要的结构就可以了。
如果你的wordpress是通过一些云计算平台自动部署的,或者是由其他人或者网站服务提供商帮你部署的,那八成你按照上面的设置设置一下就可以了。可是问题就在于我的wordpress是由自己手动部署到自己VPS上面的,由于自己在这方面newbie一个,所以难免会出现一些纰漏。这些纰漏一般都会导致你修改后查看博文的时候出现404 Not Found的错误,烦人得很。
不过最后经过自己的一番折腾,总算是弄清楚问题所在了。
下面说说这过程中试过的一些方法,并总结出几个设置失败的原因。
二
第一个原因,.htaccess 文件的权限不够。
估计大部分的原因都是来源于这个,那么好办,直接ssh连接到服务器, chmod 777 .htaccess
就可以了。之后回到permalink设置界面,再提交更改就可以了。最后别忘了将文件权限777改回644。
第二个原因,Apache没有设置AllowOverride为All。
这个需要到你的apache2目录下的文件修改相关配置文件。因为我设置完这个还是无效,所以无法确定应该修改那个配置文件,需要知道具体怎么修改的话请自行Google一下。不过在尝试这个方法之前,最好先看看下面那个原因。
第三个原因,Apache没有启用rewrite模块。
我就是这个原因导致的permlink无法设置成功。在apache目录下漫天漫地地找配置文件的时候,突然发现怎么mods_enable里面没有rewrite模块啊,顿时恍然大悟,赶紧把mods_available里面的rewrite.load文件拉过来,重启apache,测试,一切OK!
至此,永久链接的设置就告一段落了。