我想使用名稱作爲url,像stackoverflow。我有一個godaddy的Linux主機,並使用.htaccess來控制mod_rewrite網址。.htaccess和mod_rewrite - 不能得到它的工作
我試圖得到如下:
- /約=> about.php
- /學校/加=>附加school.php
- /API /問題/問= > /questions.php?action=ask
- /API /問題/ 158 => /questions.php?action=get & ID = 158
- /API /問題/ 144 /分=> /questions.php? action = get-points & id = 144
這是我迄今爲止,它不工作:
## Mod rewrite manual: http://httpd.apache.org/docs/2.0/mod/mod_rewrite.html
<IfModule mod_rewrite.c>
RewriteEngine On
# try the corresponding php file
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ([A-Za-z0-9_-]+) $1.php [qsa]
# special cases
RewriteRule ^schools\/add$ add-school.php
# API
RewriteRule ^api\/questions\/ask$ "api.php?action=ask" [qsa]
RewriteRule ^api\/questions\/(\d+)$ "api.php?action=get&id=$1" [qsa]
RewriteRule ^api\/questions\/(\d+)\/points$ "api.php?action=get-points&id=$1" [qsa]
</IfModule>
哪些規則是沒有工作,你爲什麼要引用過去的3個重定向? – jeroen
沒有規則適用於我。我引用它來試圖使其工作。 –
您的第一個抓包塊可能優先。使用'RewriteLog'找出。是的,引號是無效的,'\ /'斜槓逃脫多餘的順便說一句。 – mario