2011-12-10 98 views
0

可以說我有一個鏈接到我的網頁之一,看起來像:mysite.com/48YSWD96,我需要它看起來像:mysite.com/?d=48YSWD96。我如何實現這一目標?我可以通過修改我的htaccess文件來實現嗎?目前看起來像這樣...網址構建htaccess

RewriteEngine on 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME}\.php -f 
RewriteRule ^([^/]+)/$ $1.php 
RewriteRule ^([^/]+)/([^/]+)/$ /$1/$2.php 

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_URI} !(\.[a-zA-Z0-9]{1,5}|/)$ 
RewriteRule (.*)$ /$1/ [R=301,L] 
RewriteBase/

回答

0

看起來你只需將這個到底:

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^([A-Za-z0-9]+)$ /?id=$1 [L] 

對於它的工作周圍的其他方法:

RewriteCond %{QUERY_STRING} (^|&)id=([A-Za-z0-9]+)($|&) 
RewriteRule ^$ /%1 [L] 

這將請求mysite.com/?d=48YSWD96並將URI更改爲/48YSWD96。本質上,無論id等於查詢字符串。

+0

ehhhh,這只是帶我到根文件夾的索引。任何其他建議? – user1090809

+0

這需要'mysite.com/48YSWD96'並重寫爲'mysite.com/?d = 48YSWD96',這就是你所要求的。你能澄清你想要什麼嗎? –

+0

這正是我想要的......通過「追加到最後」,這是否意味着拿着你寫的代碼片段,並將其放在我最初的htaccess中的最後一條重寫規則之後,重寫Base /,還是我必須把它放在別的地方?我非常感謝幫助,謝謝。 – user1090809