`
sealbird
  • 浏览: 571302 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

怎么让nginx支持.htaccess文件

    博客分类:
  • yii
 
阅读更多
在网上查到的资料很多人都说nginx目前不支持.htaccess文件,简直是扯淡...
        nginx完全可以支持.htaccess文件,请按如下操作:
        1、新建一个.htaccess文件,在里面输入规则,如本站的规则:

        # nginx rewrite rule
        rewrite ^(.*?)/article/.*?-(\d+)-(\d+)\.html$   $1/show.html?id=$2&page=$3      break;
        rewrite ^(.*?)/category/.*?-(\d+)-(\d+)\.html$  $1/list.html?id=$2&page=$3      break;
        rewrite ^(.*?)/tag/([^/]+)/?$   $1/tag.html?w=$2        break;
        rewrite ^(.*?)/tag/([^/]+)/(\d+)$       $1/tag.html?w=$2&page=$3       break;
        # end nginx rewrite rule
        保存文件并上传到网站的根目录。
        2、修改虚拟主机配置

        # ee /usr/local/etc/nginx/nginx.conf  #freebsd 7.2默认nginx默认安装的配置文件
        在你需要添加伪静态的虚拟机中的server块中引入.htaccess文件

        include /usr/www/.htaccess  #请把这个改成你.htaccess文件的位置,
        保存、退出重启nginx

        # /usr/local/etc/rc.d/nginx restart
        刷新看看,如果能正常器从证明你的rewrite rule的语法是正确
       
        nginx的rewrite规则您可以直接放在主机配置中也可以放在独立的文件用includeinru,存为独立的文件时,保存到一个新的文件(文件名可以任意取,不过建议还是用.ht(注意有个“点”)开头的文件名,因为这个服务器里面默认过滤了外部对.ht开头的文件访问:

        location ~ /\.ht {
            deny  all;
        }


分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics