wordpress在Windows+nginx下实现伪静态

  • A+
所属分类:学习分享

方法一:使用httpd.ini完美实现wordpress伪静态

1.创建一个httpd.ini文件(创建一个txt文件,然后得命名为httpd,更改.txt的后缀为.ini),然后添加下面的代码:


[ISAPI_Rewrite]
# Defend your computer from some worm attacks
#RewriteRule .*(?:global.asa|default\.ida|root\.exe|\.\.).* . [F,I,O]
# 3600 = 1 hour

CacheClockRate 3600
RepeatLimit 32

# Protect httpd.ini and httpd.parse.errors files
# from accessing through HTTP
# Rules to ensure that normal content gets through

RewriteRule /tag/(.*) /index\.php\?tag=$1
RewriteRule /software-files/(.*) /software-files/$1 [L]
RewriteRule /images/(.*) /images/$1 [L]
RewriteRule /sitemap.xml /sitemap.xml [L]
RewriteRule /favicon.ico /favicon.ico [L]
# For file-based wordpress content (i.e. theme), admin, etc.
RewriteRule /wp-(.*) /wp-$1 [L]
# For normal wordpress content, via index.php
RewriteRule ^/$ /index.php [L]
RewriteRule /(.*) /index.php/$1 [L]

2.保存后,把httpd.ini文件上传到网站根目录,然后登陆wordpress博客后台,在设置——固定链接中的自定义结构设置url形式即可。

使用以上方法对win空间下的wordpress设置伪静态前,请先询问主机商是否支持伪静态(IIS Rewrite 组件),这个是IIS6.0下最新的wordpress伪静态规则。

方法二:博主在使用了第一种方法无效之后只得另找方法,就在我快绝望的时候我找到了以下方法:

打开 nginx.conf 或者某个站点的配置环境,比如 www.52yifen.com.conf(不同人配置的不一样),在  server   { } 大括号里面添加下面的代码:

location / {
try_files $uri $uri/ /index.php?$args;
}
# Add trailing slash to */wp-admin requests.
rewrite /wp-admin$ $scheme://$host$uri/ permanent;

注意:这个location不是让你去新建一个,而是在你的配置文件中找到location /{} 然后加进去,rewrite加在括号外面。

博主的环境是window sever 8 r2+主机宝(nginx+PHP 5.4 FastCgi)

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: