首页 > RewriteRule重写url的问题

RewriteRule重写url的问题

wordpress安装在根目录下的blog文件夹下,所以地址就变成http://mydomain.com/blog
日志路径http://mydomain.com/blog/sample-post/
能不能用RewriteRule把wordpress的路径改为http://mydomain.com/sample-post,隐藏掉blog?
(sample-post不是固定的,是每篇日志的名字,可变的)
看了半天htaccess没看明白到底应该怎么写。
还想请问一下RewriteRule . /index.php [L]这句话的意思
有的人安装wordpress之后路径里会多一个index.php所以要加上这句把index.php去掉
重写规则的语法:

RewriteRule Pattern Substitution [flags]

我看到的一个解释是这样的:

Pattern是一个作用于当前URL的兼容perl的正则表达式
重写规则中的Substitution是,当原始URL与Pattern相匹配时,用以替代(或替换)的字符串

那这不是用index.php代替任意字符(我也不太清楚这个pattern是什么意思,正则里的'.'不是表示任何单字符吗)?

求解释,谢谢~


自己解决...

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ blog/$1 [QSA,PT,L]

虽然去掉url中的blog字段是可以正常访问,但如果通过页面里的链接跳转,网址里还是自带blog,算了我还是把目录搬一下吧...


rewriterule ^/blog/([\/]+) /$1 [L]

【热门文章】
【热门文章】