WordPress中的文章链接默认使用的是带参数的URL格式。不过我们不建议采用这种格式,因为它搜索引擎不友好。所以我们推荐选择无参数格式,比如本例中使用”文章名”格式。但是这就需要你的Web服务器支持URL地址重写,也就是”Rewrite”。如果你的Web服务器是Apache,你只需安装并启用模块”mod_rewrite”,即可支持URL重写。但是对于Nginx来说,你就需要手动修改配置。本文将提供一个超简单的URL重写配置来让Nginx支持WordPress固定链接。

  1. 打开Nginx配置文件
    $ sudo vi /etc/nginx/sites-available/default
    
  2. 如果WordPress装在网站的根目录下,或者你配置了虚拟目录指向网站域名的根路径,你需要在”location / { }”内加入以下配置
    if(!-e$request_filename){rewrite(.*)/index.php;}
    
  3. 如果WordPress装在网站的子目录下,比如”http://域名/wordpress/”。这时,你需要在”server { }”内加入
    location/wordpress/{if(!-e$request_filename){rewrite(.*)/wordpress/index.php;}}
    

    注意,两者的主要区别在于重写的路径中加了”/wordpress”。

  4. 重启Nginx服务

    $ sudo service nginx restart
    

转载自: http://www.bjhee.com/nginx-rewrite.html