thinkphp 中的伪静态问题,不同环境下的伪静态写法

来源:互联网 发布:java四种访问修饰符 编辑:程序博客网 时间:2024/06/08 04:24

最近再本地做新闻系统,用tp开发,遇到了一个问题,就是伪静态的问题。

我在本地用的是apache 服务器,其写法,也是从网上找的,直接拿过来,也能生效,写法如下

<ifModule rewrite_module>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME -d [OR] 
RewriteCond %{REQUEST_FILENAME -f  
RewriteRule . - [L] 
RewriteRule ^index.html$ index.php/Home/Index/index
RewriteRule ^([a-z]+)\/([0-9]+)\.html$ index.php/Home/Index/detail/pinyin/$1/id/$2
RewriteRule ^(mjsw)\/index_([0-9]+)\.html$ index.php/Home/Index/cate/pinyin/$1/p/$2
RewriteRule ^(mjsw)\/$ index.php/Home/Index/cate/pinyin/$1
ErrorDocument 404 /404.html
</ifModule>


这种写法,在本地环境可以运行,但是拿到我的空间上的时候,空间的服务环境是 iis  猜想可能课服务环境有关,于是换了一种写法

如下

<IfModule mod_rewrite.c>
 RewriteEngine on
 RewriteCond %{REQUEST_FILENAME} !-d
 RewriteCond %{REQUEST_FILENAME} !-f
 RewriteRule index.html index.php/Home/Index/index
 RewriteRule ^news/([0-9]{8})/([0-9]+)\.html$ /index.php/Home/Index/detail/id/$2/t/$1 [QSA,PT,L]
</IfModule>

这种种写法在空间上可行,由于没有深入了解,(注意对比二者的区别)

经过改动后的写法,基本的展示没有问题了,但404页面的问题,没有解决,总的的问题解决了,就先把这个解决方案放在这里,或者等厉害的网友进行讲解,好了吃饭去了。

0 0
原创粉丝点击