Loading [MathJax]/jax/input/TeX/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Linux下nginx支持.htaccess文件实现伪静态的方法

Linux下nginx支持.htaccess文件实现伪静态的方法

作者头像
明哥的运维笔记
发布于 2019-01-30 01:57:50
发布于 2019-01-30 01:57:50
5.1K00
代码可运行
举报
文章被收录于专栏:运维笔记运维笔记
运行总次数:0
代码可运行

在 Google 上搜索的资料很多人都说 nginx 目前不支持. htaccess 文件,我按照 nginx 的规则试验了一下,结果发现 nginx 是完全支持. htaccess 文件的!

方法如下:

1. 在需要使用. htaccess 文件的目录下新建一个. htaccess 文件, 如本人的一个 Discuz 论坛目录:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
  vim /var/www/html/168pc/bbs/.htaccess

2. 在里面输入规则,我这里输入 Discuz 的伪静态规则:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 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 配置文件:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
    vim /etc/nginx/nginx.conf

4. 在需要添加伪静态的虚拟主机的 server{} 中引入. htaccess 文件,如图所示:

include /var/www/html/168pc/bbs/.htaccess;(把这个改成你. htaccess 文件的具体位置) wq 保存退出。

5. 重新加载 nginx 配置文件:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 /etc/init.d/nginx reload

重新打开网页看看,如果伪静态正常就证明你的 rewrite rule 语法是正确的。

正常,完毕!

补充:偶在网上发现了个可以在线将 Apache Rewrite 伪静态规则自动转换为 Nginx Rewrite 网页。大家可以试试看。

http://www.anilcetin.com/convert-apache-htaccess-to-nginx/

此地址里面的内容包含可以完成上面说的略做修改的功能。就是把. htaccess 中的规则自动转换成 nginx 下面可用的规则。

总结:.htaccess 文件本来是 apache 专用的分布式配置文件,提供了针对每个目录改变配置的方法,即在一个特定的目录中放置一个包含指令的文件,其中的指令作用于此目录及其所有子目录。其实修改一下,nginx 也可使用. htaccess 文件实现多种功能。实现伪静态只是. htaccess 的其中一个用途,.htaccess 还可以做很多的用途,如过滤访问 IP,设置 web 目录访问权限、密码等。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2015-01-04,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Nginx服务器下使用rewrite重写url以实现伪静态的示例
这篇文章主要介绍了Nginx服务器下使用rewrite重写url以实现伪静态的示例,这里举了Discuz!和WordPress这两个常用的PHP程序,需要的朋友可以参考下
习惯说一说
2019/07/03
2.3K0
Nginx/Apache之伪静态设置 - 运维小结
一、什么是伪静态 伪静态即是网站本身是动态网页如.php、.asp、.aspx等格式动态网页有时这类动态网页还跟"?"加参数来读取数据库内不同资料,伪静态就是做url重写操作(即rewrite)。很典
洗尽了浮华
2019/05/25
13.5K0
nginx rewrite伪静态配置参数详解
nginx rewrite 伪静态配置参数和使用例子 附正则使用说明 正则表达式匹配,其中: * ~ 为区分大小写匹配 * ~* 为不区分大小写匹配 * !~和!~*分别为区分大小写不匹配及不区分大小写不匹配 文件及目录匹配,其中: * -f和!-f用来判断是否存在文件 * -d和!-d用来判断是否存在目录 * -e和!-e用来判断是否存在文件或目录 * -x和!-x用来判断文件是否可执行 flag标记有: * last 相当于Apache里的[L]标记,表示完成rewrite * br
用户2135432
2018/06/04
3.3K0
LNMP 下添加 Discuz x2.5 的伪静态规则
今天一个找我配置过 lnmp 环境的用户要搭建 Discuz 论坛,但是发现不支持伪静态,站长没怎么折腾过 Discuz,百度下才知道,原来军哥的 LNMP 环境包自带的 DZ 规则不适用于 Discuz x2.5,记录下对应的伪静态规则。
星哥玩云
2022/08/13
6800
nginx rewrite伪静态配置参数详解
nginx rewrite 伪静态配置参数和使用例子 附正则使用说明 正则表达式匹配,其中: * ~ 为区分大小写匹配 * ~* 为不区分大小写匹配 * !~和!~*分别为区分大小写不匹配及不区分大小写不匹配 文件及目录匹配,其中:
用户10270395
2022/12/16
2.5K0
IIS虚拟主机支持URL重写指南
IIS虚拟主机支持.htaccess实现URL重写,下载合适的版本,下载手动安装包ISAPI_Rewrite3_0042_manual.exe,需要手工解压到服务器的一个目录中。
会长君
2023/04/26
4.8K0
伪静态规则写法RewriteRule-htaccess详细语法使用
伪静态实际上是利用PHP把当前地址解析成另一种方法来访问网站,要学伪静态规则的写法,要懂一点正则
全栈程序员站长
2022/09/07
7100
第八章·Nginx实现Rewrite重写
-多年互联网运维工作经验,曾负责过大规模集群架构自动化运维管理工作。 -擅长Web集群架构与自动化运维,曾负责国内某大型金融公司运维工作。 -devops项目经理兼DBA。 -开发过一套自动化运维平台(功能如下): 1)整合了各个公有云API,自主创建云主机。 2)ELK自动化收集日志功能。 3)Saltstack自动化运维统一配置管理工具。 4)Git、Jenkins自动化代码上线及自动化测试平台。 5)堡垒机,连接Linux、Windows平台及日志审计。 6)SQL执行及审批流程。 7)慢查询日志分析web界面。
DriverZeng
2022/09/26
6790
第八章·Nginx实现Rewrite重写
由浅入深剖析.htaccess
.htaccess的主要作用就是实现url改写,也就是当浏览器通过url访问到服务器某个文件夹时,作为主人,我们可以来接待这个url,具体地怎样接待它,就是此文件的作用。所有的访问都是通过URL实现,所以.htaccess的作用非同小可。正因为此,所以一般地网站通过设置.htaccess,通过一个十分友好的url吸引用户进来,然后用.htaccess把用户带到需要访问的位置。
Java架构师必看
2021/03/22
5.3K0
ZBLOG PHP程序伪静态规则集合 - Apache/Nginx/IIS/Lighttpd
虽然老蒋部落采用的是WordPress搭建的,但是帮助客户企业网站,以及平时折腾的较多的还是ZBLOG CMS居多,前者稍许用户使用多一些而且插件和主题以及文档较多,对于一个可能比较长久的网站还是比较妥当的,唯一不足的是占用资源比较大。如果我们需要占用资源轻量级CMS,个人比较推荐ZBLOG PHP或者TYPECHO,两者占用资源都比较小的。
老蒋
2021/12/27
2.1K0
nginx应用总结(1)--基础认识和应用配置
在linux系统下使用nginx作为web应用服务,用来提升网站访问速度的经验已五年多了,今天在此对nginx的使用做一简单总结。 一、nginx服务简介 Nginx是一个高性能的HTTP和反向代理服务器,也是一个 IMAP/POP3/SMTP代理服务器。Nginx 已经因为它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名了。 使用 Nginx 前必须了解的事项: 1)目前官方 Nginx 并不支持 Windows,您只能在包括 Linux、UNIX、BSD 系统下安装和使用; 2)Nginx
洗尽了浮华
2018/01/23
3.4K0
nginx应用总结(1)--基础认识和应用配置
.htaccess伪静态规则
Apache的 mod_rewrite是比较强大的,在进行网站建设时,可以通过这个模块来实现伪静态。
阿珏
2018/08/02
6K0
Nginx给目录添加反斜杠的伪静态规则方法
今天访问自己的博客网站发现一处问题,因为之前用过Windows和Apache的环境,并未出现此问题。
李洋博客
2021/06/15
3K0
ThinkPHP3.2.3+Nginx的伪静态配置
一、配置nginx.conf user  www www; worker_processes auto; error_log  /www/wwwlogs/nginx_error.log  crit; pid        /www/server/nginx/logs/nginx.pid; worker_rlimit_nofile 51200; events     {         use epoll;         worker_connections 51200;         multi_a
Sindsun
2018/06/06
2.8K0
【DEDE伪静态】织梦cms网站如何做伪静态
DEDE织梦cms常用的参数标签汇总、以及操作过程中的一些bug问题解决方法,dede网站二开,以下龙腾飞网络科技-小吴在建站实操中笔记记录,织梦dede建站教程保存使用非常方便:
攻城狮与产品喵
2025/03/13
8610
【DEDE伪静态】织梦cms网站如何做伪静态
apache 伪静态配置
今天想把一个文章发布系统改成伪静态,于是乎用了几个小时百度,google……找apache伪静态配置 一个网站基本上就三个简单的页面。index.php、list.php以及info.php 看过网上的之后,自己摸索摸索,就把改成一个网站改了伪静态。我把详细过程贴给大家看看。算是抛砖引玉吧。 第一、打开apache配置文件(httpd.conf) 第二、找到LoadModule rewrite_module modules/mod_rewrite.so将前面的#去掉 第三、还在这个文件继续找 <
苦咖啡
2018/05/07
5.6K0
关于伪静态的实现方法
1.检测Apache是否支持”mod_rewrite” 打开您的apache安装目录“/apache/conf/” 下的 httpd.conf 文件,通过Ctrl+F查找到“LoadModule rewrite_module”,查看前面的”#”号是否已删除,没有删除的,直接删除即可。 如果没有查找到,则到“LoadModule” 区域,在最后一行加入“LoadModule rewrite_module modules/mod_rewrite.so”,然后重启apache服务器即可。
Yiiven
2022/12/15
1.5K0
ZBLOG静态设置方法 - 常用Apache和Nginx WEB环境伪静态
无论我们是使用WordPress还是ZBLOG程序,基本上都会使用到伪静态,直接使用动态页面的并不多见。如果我们全部生成静态也不多,毕竟从ZBLOG 转型PHP之后已经没有早起ASP的静态模式,老蒋记得那时候ASP时代ZBLOG ASP程序基本上80%+的个人网站都有使用。
老蒋
2021/12/27
2.4K0
ZBLOG静态设置方法 - 常用Apache和Nginx WEB环境伪静态
WordPress 如何设置Apache和Nginx的伪静态规则设置以及二级目录伪静态规则
WordPress的伪静态规则是根据服务器环境来设置的,不同的PHP环境有不同的伪静态设置方法,常见的PHP环境有 Apache和Nginx ,以下分别就这两种环境做伪静态设置。
Kit
2021/08/02
3.5K0
WordPress 如何设置Apache和Nginx的伪静态规则设置以及二级目录伪静态规则
WordPress固定链接404解决方法—配置伪静态
一般的大型网站系统,都依赖伪静态。如果服务器的伪静态没有配置好,访问部分链接就会出现 404 的情况。 在 WordPress 则具体表现为后台“固定链接”选项设置失效。 下面就提供各种 web 环境下的 WordPress 伪静态规则设置教程。 Apache、Kangle伪静态 下载 Apache -Kangle WordPress 伪静态配置文件,解压后将里面的 .htaccess 上传至网站根目录,然后在 WordPress 后台>设置>固定链接>拉到最下面点击“保存更改”即可。 Nginx伪静态 打
禹都一只猫olei
2018/05/25
5.1K2
相关推荐
Nginx服务器下使用rewrite重写url以实现伪静态的示例
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验