2010-09-05 61 views
1

我有一個Godaddy共享的Linux主機帳戶。我認爲對於這個問題,我需要重寫URL,但是我的Apache知識是非常有限的,所以如果問題太小,請提前請諒解:)。在Godaddy Linux帳戶上重寫Web服務URL

域xxx.com,我打電話給我的PHP Web服務這樣的:

http://service.xxx.com/catalog.php?action=getcatalog&catalogid=7 

我希望能這樣稱呼它:

http://service.xxx.com/catalog/getcatalog?catalogid=7 

因爲我有幾個服務幾個參數名稱,在該方程中的變量是頁面,動作和參數的名稱

(即http://service.xxx.com/X/Y?Z=W =>http://service.xxx.com/X.php?action=Y&Z=W) 作爲一個增加的複雜性,其中一些服務有多個參數。

問題是: 1.共享服務器無法訪問httpd.conf文件,這甚至有可能嗎? 2.如果是這樣,我需要做什麼?

TIA, 蓋伊

回答

2
<IfModule mod_rewrite.c> 
    RewriteEngine on 
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteRule ^(\w+)/(\w+)$ $1.php?action=$2 [L,QSA] 
</IfModule> 

QSA部分應該通過的任何其它參數。

+0

@aularon感謝您的快速回答。我在哪裏放置這個部分?它是特定php文件目錄中的.htacess文件嗎?我是否需要重新啓動服務(當然,我不能)? – 2010-09-05 11:12:47

+0

如果您發佈的示例URL相同,則將其放入公用文件夾根目錄下的'.htaccess'文件中。並且您不需要重新啓動服務,因爲apache會根據每個請求解析'.htaccess'。 – aularon 2010-09-05 11:22:47

+0

不起作用 - 我得到了404。 – 2010-09-05 11:35:11