shopex与phpwind的双伪静态的规则设置

来源:百度知道 编辑:UC知道 时间:2024/06/20 15:58:22
===========以下是shopex的伪静态规则===============

# 设置RewriteBase的值为你的商店目录地址
RewriteBase /
RewriteCond %{REQUEST_FILENAME} \.(html|xml|json|htm|php|php2|php3|php4|php5|phtml|pwml|inc|asp|aspx|ascx|jsp|cfm|cfc|pl|cgi|shtml|shtm|phtm)$
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?$1 [L]

============以下是phpwind的伪静态规则========
[ISAPI_Rewrite]
# Defend your computer from some worm attacks
RewriteRule .*(?:global.asa|default.ida|root.exe|..).* . [F,I,O]
RewriteRule ^(.*)-htm-(.*)$ $1.php?$2
RewriteRule ^(.*)/simple/([a-z0-9_]+.html)$ $1/simple/index.php?$2
#Code By Josh @ PHPWind 2008-10-08 ?([a-zA-Z]+)

把两个规则单独用倒可以用,放在一起就都用不了了,问题是,如何把它们两个规则一起放到httpd.conf的文件里使shopex和phpwind都能用上伪静态,求高人解答

设置两个主机头就行了,一个在bbs.你的域名.xx下设置
一个在shop.你的域名.xx下设置

有两种解决方案

1:这两套程序一定放在不同的目录下,不同的目录,带上前缀做REWRITE就可以了

例如你的目录分别是shop和bbs

那么前面应该是:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^/shop/(.*)$ /shop/index.php?$1 [L]

你给的例子,一个是.HTACCESS里的写法,一个是IIS的REWRITE写法,需要稍加注意

2.就是把phpwind的REWRITE规则放在前面写并加上 [L]

例如:
RewriteRule ^(.*)-htm-(.*)$ $1.php?$2 [L]