Clean URL 中文可译作“简洁链接”,是一种美观、对搜索引擎友好并且可以表意的 URL。
例如:http://www.shingo.cn/Tech/Web-Develop 就比 http://www.shingo.cn/?q=node/179 要好得多。
Clean URL 被很多 PHP 博客、CMS(内容管理系统)所使用。 如:WordPress、Drupal……
Clean URL 是通过 Apache 的 mod_rewrite 模块实现的。原理简单来说就是把那些丑陋而且没有意义的 URL 替换掉。
我们经常遇到的错误是 WordPress 或 Drupal 等网站程序告诉你,Clean URL 不能工作,但这不是网站程序引发的错误,而是服务器配置。
既然 Clean URL 是通过 Apache 的 mod_rewrite 模块实现的,那自然先要配置 Apache 了。
这样 mod_rewrite 模块就算配置好了,但这还不够,还需要让网站目录下的 .htaccess 文件能起作用才行!
人们常常因为忽略了下面所说的这个选项而不能使 Clean URL 工作并且不知所措:
找到
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
或者
<Directory "网站根目录">
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
Allow from all
</Directory>
把 AllowOverride None 改为 AllowOverride All。
OK,保存,重启 Apache,大功告成。