2013-03-01 231 views
-1

這是我的網址:的.htaccess更改查詢字符串

localhost/myweb/home.php 

現在我只是使用此代碼刪除的文件擴展名:

RewriteEngine on 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME}\.php -f 
RewriteRule ^(.*)$ $1.php 

轉來轉去的:

localhost/myweb/home 

它工作正常。

現在我想改變這個網址:

localhost/myweb/home.php?str=tmprow 

這樣:

localhost/myweb/home/tmprow 
+0

你爲什麼不能做同樣的事情? – 2013-03-01 01:58:54

+0

你是什麼意思?怎麼樣? – avien 2013-03-01 02:20:52

回答

1

你可以嘗試這樣的事:

Options +FollowSymlinks -MultiViews 
RewriteEngine On 
RewriteBase/
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^([^/]+)/?([^/]+)?/? $1.php?str=$2 [L,NC] 

地圖默默

http://localhost/myweb/par1

http://localhost/myweb/par1/par2帶或不帶斜線

要:根據實際設置和DocumentRoot

http://localhost/myweb/par1.php

http://localhost/myweb/par1.php?str=par2

如有必要,設定RewriteBase/myweb

假設所有字符串都是可變的,而假設myweb是固定的。

對於永久重定向,更換[L,NC][R=301,L,NC]