使Nginx服务器支持.htaccess的方法

作者:goldensun 时间:2023-07-21 22:02:19 

可能很多朋友都常用nginx不支持.htaccess,只有apache才支持.htaccess文件,其实这是错误的看法nginx也是支持.hatccess的哦,下面我来给各位总结一下配置方法。

其实nginx和.htaccess一点关系都没有,只是一大堆人深受apache的影响觉得nginx应该也要支持.htaccess功能。在nginx的配置中直接include .htaccess文件就好


include /站点目录/.htaccess;

多么简单,但是更让人哭笑不得的是有大部分人根本就不知道nginx与apache是两个不同webserver程序,于是不少人这么干:在nginx里include .htaccess文件后,把apache伪静态规则的.htaccess上传到站点根目录下...无语。其实nginx可以include任何文件,而不仅仅是.htaccess。

其实nginx这样引用.htaccess跟apache还是有区别的:

1、nginx是启动引入,因为nginx特别注重效率,所以启动的时候会把所有的配置文件读入内存,然后启动个。如果发现有语法错误,则启动失败。而apache则是动态引入,每次访问站点都会重新载入配置。

2、nginx中的include是手动添加,指定目录。apache已经把.htaccess作为它的一种特色机制,并且支持站所有子目录都可以有.htaccess文件。

根际实际开发经验,很多人在早期都是用虚拟空间的多,而早期的虚拟空间基本都是apache做webserver,所以用户不需要联系空间商就能自己做伪静态,而开源程序更是方便的拓展这一功能(ecshop,wordpress,phpcms等等)。并且维护也方便,只要覆盖.htaccess就好。

其实,没有几个站点经常去修改.htaccess,并且现在基本使用vps居多。

nginx 也可使用 .htaccess 文件实现多种功能。

在 nginx/nginx.conf的server{}中引入 .htaccess 文件:


include /vhosts/quany.info/.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;
}


标签:Nginx,htaccess
0
投稿

猜你喜欢

  • CRM常用词汇大全

    2008-09-04 12:17:00
  • 动易BizIdea 2.5 版新功能:与支付宝系统全面整合

    2009-05-20 21:39:00
  • 建成功博客必知的三个定位

    2008-08-05 18:22:00
  • Centos7安装ElasticSearch 6.4.1入门教程详解

    2023-04-15 13:02:57
  • 链接在搜索引擎优化得分 质量才是硬道理

    2008-12-30 09:25:00
  • “土豆”将闪电完成对“酷6”的并购

    2008-01-20 10:35:00
  • CentOS7下如何配置ip forward(虚拟路由器)

    2023-08-06 17:14:23
  • 快速分辨欺诈paypal

    2009-03-30 17:30:00
  • Linux文件服务器实战详解(虚拟用户)

    2023-08-07 06:10:47
  • 中小网站如何能从广告联盟获取到更多利益

    2008-12-26 13:19:00
  • 搜索引擎优化绝对不能忽视链接锚文本优化

    2009-02-24 12:57:00
  • Linux系统中如何添加自己的库文件路径

    2009-09-20 20:21:00
  • 网络应用 介绍并分析P2P流量识别与监测

    2008-11-06 14:00:00
  • 新手建站经验谈

    2007-08-05 13:41:00
  • 安装Windows 2000十大注意事项

    2007-10-11 15:41:00
  • 详解GSA(Google Search Appliance)的安装和使用

    2011-09-15 20:21:11
  • 配置Telnet服务与配置Ftp服务

    2009-12-07 19:23:00
  • 站长赚钱必读:选择优秀广告联盟的技巧

    2009-02-19 10:42:00
  • 让黑客远离DNS和SMTP服务器攻击

    2009-06-01 17:15:00
  • 揭密鬼页 浅析浏览器跨域安全问题

    2008-10-07 18:11:00
  • asp之家 网站运营 m.aspxhome.com