2011-07-31 34 views
0

如何改寫如何將www.sitename.com/thing/thing.php?otherthing=something-like-this改寫爲www.sitename.com/something-like-this?

www.sitename.com/thing/thing.php?otherthing=something-like-this

www.sitename.com/什麼樣呢?

請幫助我,因爲我似乎無法成功。我的主機使用Apache 2.2。非常感謝您的幫助!

更新

不,我不需要那個尾隨?但是,我使用了您提供給我的重寫規則,但它仍然無法正常工作。我還在規則前添加了RewriteEngine On。

我有Linux託管,.htaccess和代碼顯然是語義正確的,否則我會得到所有流行的500內部服務器錯誤。我將.htaccess文件放在文件夾中,並放置在網站的根目錄中,但它仍然不起作用。

回答

0

應該有一個選項以目錄格式而不是PHP ?格式顯示它。如果沒有,您可以使用.htaccess mod_rewrite規則以/folder/的方式進行顯示。

我這樣做的方式是,我只是上傳我的文件,每個頁面名稱是index.html,然後我創建文件夾,並將每個index.html放在該文件夾中。就像這樣:

/guidelines/

在該文件夾是index.html,所以不是它是/guidelines.html/guidelines/

看起來沒有.html

+0

更簡單 - 只需使用mod_rewrite和單個規則(除非您的託管公司沒有啓用mod_rewrite ..這是非常罕見的......並且通常在便宜的託管計劃上)。 – LazyOne

+0

@LazyOne你如何獲得如此多的聲譽?這似乎很難,即使只得到1000. – Nathan

+0

這並不是很多 - 這是很多:http://stackoverflow.com/users/22656/jon-skeet(這裏的完整列表:http:// stackoverflow。 com/users?tab = reputation&filter = all) – LazyOne

0

你需要使用mod_rewrite更好:

RewriteCond %{QUERY_STRING} ^otherthing=(.*)$ 
RewriteRule ^thing/thing.php$ /%1? [L] 

不知道,如果你打算有尾隨?在重寫結束時,我不認爲這是可能的。請注意,RewriteRule末尾的?是爲了擺脫查詢字符串,否則重寫的URL在末尾仍然有?otherthing=something-like-this

相關問題