nginx 伪静态配置方法

nginx里使用伪静态是直接在nginx.conf 中写规则的,并不需要像apache要开启写模块(mod_rewrite)才能进行伪静态
nginx只需要打开nginx.conf配置文件,在server里面写需要的规则即可

 代码如下 复制代码

server
{
listen       80;
server_name  bbs.o135.cn;
index index.html index.htm index.php;
root  /home/www/bbs;

error_page  404                                             /404.htm;       #配置404错误页面
location ~ .*.(php|php5)?$
{
#fastcgi_pass  unix:/tmp/php-cgi.sock;
fastcgi_pass  127.0.0.1:9000;
fastcgi_index index.php;
include fcgi.conf;
}

#下面就是伪静态了

location /{
rewrite ^(.*)/equip(d+).html$ $1/index.php?m=content&c=index&a=lists&catid=$2 last;
}
access_log  access_log   off;
}

然后重启nginx服务器伪静态就生效了,这种维护起来很是不方便我们可以把它写在外部文件如,如bbs_nginx.conf

把这段代码保存成

 代码如下 复制代码
location /{
rewrite ^(.*)/equip(d+).html$ $1/index.php?m=content&c=index&a=lists&catid=$2 last;
}

然后我们同样在上面的代码root  /home/www/bbs;后面加上加如下写

 代码如下 复制代码
include /home/www/bbs/bbs_nginx.conf;

#包括网站根目录中的bbs_nginx.conf伪静态规则,即可实现单独管理..

再重启apache即可。

使用.htaccess文件的目录下新建一个.htaccess文件,

如本人的一个Discuz论坛目录:

 代码如下 复制代码

vim /var/www/html/168pc/bbs/.htaccess

2. 在里面输入规则,我这里输入Discuz的伪静态规则(这里仅增加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配置文件:

 代码如下 复制代码

vim  /etc/nginx/nginx.conf

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

 代码如下 复制代码
include /var/www/html/168pc/bbs/.htaccess;(

把这个改成你.htaccess文件的具体位置)

wq保存退出。

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

 代码如下 复制代码

/etc/init.d/nginx reload

时间: 2024-09-20 15:27:50

nginx 伪静态配置方法的相关文章

Yii2配置Nginx伪静态的方法

本文实例讲述了Yii2配置Nginx伪静态的方法.分享给大家供大家参考,具体如下: 主要检查以下代码: location / { # Redirect everything that isn't a real file to index.php try_files $uri $uri/ /index.php?$args; } 完整代码: server { charset utf-8; client_max_body_size 128M; listen 80; ## listen for ipv4

Win7/Windows2003下IIS6.0、IIS7.5的伪静态组件安装和伪静态配置方法_win服务器

1)下载IIS伪静态组件--ISAPI_Rewrite3完全破解版 ISAPI_Rewrite3非常好用,是个人见过最好用同时可以支持多站点的IIS伪静态组件!1.官网下载(http://www.helicontech.com/download/isapi_rewrite/ISAPI_Rewrite3_0073.msi):2.建议从本网站下载破解版:http://www.jb51.net/softs/41171.html2)安装IIS伪静态组件1.以下载本网站的破解版为例:将下载的ISAPI_R

apache 伪静态配置方法

apache 伪静态配置方法 Apache伪静态html(URL Rewrite)设置法 phpma一 打开 Apache 的配置文件 httpd.conf . phpma二 将#LoadModule rewrite_module modules/mod_rewrite前面的#去掉 phpma三 在 httpd.conf中添加: <IfModule mod_rewrite.c>     RewriteEngine On     #RewriteCond %{ENV:SCRIPT_URL} (?

Win7/Windows2003下IIS6.0、IIS7.5的伪静态组件ISAPI_Rewrite安装和伪静态配置方法

说实在的windows的服务器是我最不喜欢的系统,所以一直以来做的很少,没办法,而这次就需要做Windows2003下iis6.0伪静态,没办法,只能倒腾选,把过程和经验贴出来,学习下.  Win7/Windows2003下IIS6.0.IIS7.5的伪静态组件isapi_rewrite安装和伪静态配置方法 本过程适合: Win7/Windows2003下IIS6.0.IIS7.5 1)下载IIS伪静态组件--ISAPI_Rewrite3完全破解版 ISAPI_Rewrite3非常好用,是个人见

DedeCMS 5.7伪静态配置方法

1)你的主机是否支持伪静态?这点很重要,不然下面说再多也是白搭.简单说明下,Apache服务器伪静态实现需要借助.htaccess文件:IIS服务器伪静态实现则需要加载Rewrite组件,然后配置httpd.ini文件: 延伸阅读:Windows2003 IIS6/7伪静态组件下载/安装/配置(附伪静态规则) 2)DedeCMS V5.7管理后台-系统-系统基本参数-模块设置,"是否使用Rewrite"选择"是","问答模块的二级域名"填写&qu

DedeCMS V5.7问答伪静态配置方法

我们先来看下DedeCMS 5.7问答模块的官方升级说明: 1)重构问答模块,采用模块MVC架构进行重构: 2)问答模块支持伪静态设置: 3)重新设计问答模块前台界面,新界面同系统整体界面一致: 4)客服中心采用新版问答模块改版: 5)问答模块增加对二级域名的支持.通过上述说明,结合DedeCMS V5.7的问答源码,基本可以确定两个信息: 1)DedeCMS 5.7问答模块仍然支持伪静态: 2)由于织梦问答模块升级,使用了新的URL形式,历史版本的问答系统伪静态规则已经不适用于新版了,这也De

nginx location 配置方法总结

一.location [=|~|~*|^~|@] /uri/ { ... } 1.~ 为区分大小写匹配  2.~* 为不区分大小写匹配  3.!~ 为区分大小写不匹配 4.!~* 为不区分大小写不匹配  5.= 开头表示精确匹配 6./ 通用匹配,所有请求都会被匹配到 有多个location配置的情况下,先走 = ,然后是^~,其他的则按书写顺序来依次匹配,最后是通用匹配 / ;  代码如下 复制代码 nginx不对url进行编码,例如:/20%/ 可以被 / / 匹配到. 示例: 匹配所有请求

apache中虚拟主机与伪静态配置方法

在apache安装根目录中找到conf/httpd.conf文件,然后打开这个文件最下边有一行 # virtual hosts include conf/extra/httpd-vhosts.conf 看include conf/extra/httpd-vhosts.conf 这一行是否被注释掉,如果被注释掉,请取消注释. 然后打开conf/extra/httpd-vhosts.conf 这个文件,在文件中新建虚拟机 比如要绑定域名为www.111cn.net <virtualhost *:80

phpcms v9中给Rss伪静态配置方法

ss页面的伪静态实现目标 设置前的URL:http://localhost/index.php?m=content&c=rss&siteid=1 设置后的URL:http://localhost/rss.html 实现方法: 一.开启rewrite模块 找到Apache 配置文件 httpd.conf  1.LoadModule rewrite_module modules/mod_rewrite.so  把这句的"#"注释掉.  2.AllowOverride non