方法如下:
1.在需要使用.htaccess文件的目录下新建一个.htaccess文件,
如本人的一个Discuz论坛目录:
vim/var/www/html/168pc/bbs/.htaccess
2.在里面输入规则,我这里输入Discuz的伪静态规则(这里仅增加Discuz的伪静态规则):
#nginxrewriterule
rewrite^(.*)/archiver/((fid|tid)-[w-]+.html)$$1/archiver/index.php?$2last;
rewrite^(.*)/forum-([0-9]+)-([0-9]+).html$$1/forumdisplay.php?fid=$2&page=$3last;
rewrite^(.*)/thread-([0-9]+)-([0-9]+)-([0-9]+).html$$1/viewthread.php?tid=$2&extra=page=$4&page=$3last;
rewrite^(.*)/profile-(username|uid)-(.+).html$$1/viewpro.php?$2=$3last;
rewrite^(.*)/space-(username|uid)-(.+).html$$1/space.php?$2=$3last;
rewrite^(.*)/tag-(.+).html$$1/tag.php?name=$2last;
#endnginxrewriterule
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/nginxreload
文章参考:/942.html
=================================================
下面再补充一下,nginx下Wordpress固定链接的伪静态方法:
nginx下Wordpress固定链接的伪静态规则其实特别简单,在nginx配置文件nginx.conf的location段添加一行即可.
vim/usr/local/nginx/conf/nginx.conf
在server容器中添加下面这几行
----------------------------------------------------------------------------
location/{
try_files$uri$uri//index.php?q=$uri&$args;#只添加这一行就行了
}
----------------------------------------------------------------------------
接着重启nginx
#/usr/local/nginx/sbin/nginx-sreload
文章参考:/nginx-wordpress-rewrite/
当我们从apache服务器转向Nginx服
务器的时候,它们的伪静态规则就不一样了,所以你熟悉Nginx服务器的伪静态规则,自己写当然也好。但很多网友还是不太了解Nginx服务器的伪静态规
则的,而如果你安装的是一些常用的程序,如WordPress,PHPCMS,ECSHOP,SHOPEX,Discuz7,那伪静态规则就有现成的
了。为方便各位站长,收集了这几个常用程序的伪静态规则。
WordPress伪静态规则
--------------------------------------------------------------------------------------------------------
location/{
indexindex.htmlindex.php;
if(-f$request_filename/index.html){
rewrite(.*)$1/index.htmlbreak;
}
if(-f$request_filename/index.php){
rewrite(.*)$1/index.php;
}
if(!-f$request_filename){
rewrite(.*)/index.php;
}
}
-----------------------------------------------------------------------------------------------------------
以上是WordPress的伪静态规则,对于其他网站程序的伪静态规则可以参考:
http://www.centos.bz//03/nginx-rewrite-wordpress-phpcms-ecshop-shopex-discuz7/
PPS:博主实践
1.站点根目录下新建 .htaccess文件 写入规则:
rewrite ^/soft/$ /index.php/categories/index/cid/1
last;
2.nginx.conf文件server里include调入.htaccess文件
3.重启nginx
搞定!