在Google上搜索的资料很多人都说nginx目前不支持.htaccess文件,我按照nginx的规则试验了一下,结果发现nginx是完全支持.htaccess文件的!
方法如下:
1. 在需要使用.htaccess文件的目录下新建一个.htaccess文件,
如我的一个Discuz论坛目录:
vi /var/www/html/bbs/.htaccess
2. 在里面输入规则,我这里输入Discuz的伪静态规则:
# nginx rewrite rule rewrite ^(.*)/archiver/((fid|tid)-[w-]+.html)$ $1/archiver/index.php?$2 last; rewrite ^(.*)/forum-([0-9]+)-([0-9]+).html$ $1/forumdisplay.php?fid=$2&page=$3 last; rewrite ^(.*)/thread-([0-9]+)-([0-9]+)-([0-9]+).html$ $1/viewthread.php?tid=$2&extra=page%3D$4&page=$3 last; rewrite ^(.*)/profile-(username|uid)-(.+).html$ $1/viewpro.php?$2=$3 last; rewrite ^(.*)/space-(username|uid)-(.+).html$ $1/space.php?$2=$3 last; rewrite ^(.*)/tag-(.+).html$ $1/tag.php?name=$2 last; # end nginx rewrite rule
wq保存退出。
3. 修改nginx配置文件:
vi /etc/nginx/nginx.conf
4. 在需要添加伪静态的虚拟主机的server{}中引入.htaccess文件,
include /var/www/html/bbs/.htaccess
include /var/www/html/bbs/.htaccess;(把这个改成你.htaccess文件的具体位置)
wq保存退出。
5. 重新加载nginx配置文件:
/etc/init.d/nginx reload
重新打开网页看看,如果伪静态正常就证明你的rewrite rule语法是正确的。
重写规则各种各样,大家一起交流即可。
相关推荐
【Nginx 文件资源下载详解】 ...总结,Nginx 不仅能提供高效的静态文件服务,还能实现文件资源的便捷下载,是构建高性能下载站点的理想选择。通过灵活配置,我们可以满足各种场景下的文件服务需求。
与Nginx相比,LiteSpeed对.htaccess的rewrite规则支持更完善,减少了用户自定义伪静态规则的困扰。 LLsMP的一键安装包由llsmp.org提供,简化了在多种Linux发行版上的部署过程,包括CentOS 5/6、Debian 5/6以及...
这个配置文件已经在CentOS 7.1 + Nginx 1.8.0 + Laravel 5.0的环境中通过了测试。请注意,为了确保配置正确无误,配置文件修改后应重启Nginx服务。在实际部署过程中,根据你的服务器环境和Laravel项目的实际位置,...
1. **创建配置文件**: 在服务器上新建一个名为`.htaccess`的文件,配置URL重写规则,使网站支持伪静态。 2. **数据库配置**: 修改PHP168根目录下的`config.php`,填写刚创建的数据库信息。 3. **运行安装向导**: ...
2. Nginx:Nginx以其反向代理、负载均衡和静态文件处理能力强而知名。理解其工作原理和配置文件结构,能有效地优化网站性能。 三、PHP环境搭建 PHP是一种广泛应用的服务器端脚本语言,用于开发动态网站。在Linux上...
为了避免未授权访问,可以在每个子目录下创建`.htaccess`文件,并添加`Deny from all`规则,禁止直接访问这些目录。 **第四步:处理静态资源** 由于`public`目录已被移动,静态资源如CSS、JS和图片可能出现404错误...
3. **配置文件**:例如 `.htaccess`,用于设置Apache服务器的特定规则,或者Nginx的配置文件。 4. **脚本和库**:如jQuery、Bootstrap等前端框架,或PHP、Python等后端脚本。 5. **版本控制文件**:如`.gitignore`,...