您好我是mod_rewrite的新手,我需要重写以下uri:
testsite / payBill?token = EC-8TM276595T982014G& PayerID = V3GMCKGHW5XXU
这样的事
的测试网站/ index.php的PayBill&安培;令牌= $ 1和; PayerID = $ 16
我一直在搜索这个网站上的一些例子,但没有成功找到类似我的案例。
...修订
更具体一点:
这是我的基础: RewriteBase / tshirtshop 。
这是我需要重写的URL。
https:// localhost / tshirtshop / payBill?token = EC-2FT032799N454992F& PayerID = V3GMCKGHW5XXU
类似于:
https://localhost/tshirtshop/index.php?PayBill& token = $ 1& PayerID = $ 2
答案 0 :(得分:0)
应该这样做......
RewriteEngine On
# Either RewriteBase has to point to the base or the RewriteRule has to be ^(.*)$ /index.php/$1 [L] not ^(.*)$ index.php/$1 [L]
RewriteBase /testsite/
# Only do this when the file doesn't exist
RewriteCond %{REQUEST_FILENAME} !-f
# Only do this when the directory doesn't exist
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)\?(.*)$ /index.php?$1&$2 [L]
答案 1 :(得分:0)
Mod重写用于将一个URL转换为另一个URL或将一个URL的内容反映到另一个URL中。如果结果URL的数据未包含在原始数据中,那么我认为不可能这样做。
也许您想用PHP实现这一点,我建议您将所有URL重写为主PHP文件,然后从那里控制所有导航流。
答案 2 :(得分:0)
尝试将以下内容添加到.htaccess文件
RewriteEngine On
RewriteBase /tshirtshop/
RewriteCond %{HTTPS} on
RewriteCond %{REQUEST_URI} ^/tshirtshop/paybill [NC]
RewriteCond %{QUERY_STRING} ^token=(.+)&payerid=(.+) [NC]
RewriteRule .* index.php?PayBill&token=%1&PayerID=%2 [L]