2017-04-13 142 views
-1

我只是想嘗試mod_rewrite並閱讀一些關於它的東西。這個重寫規則有什麼問題?

我對本地主機文件:

board.php?b=123XYZ 

而且要歸檔:

board/123XYZ 

這是我到目前爲止有:(的.htaccess是可讀和根內)

RewriteEngine On 
RewriteRule ^board/([A-Za-z0-9-]+)/?$ board.php?b=$1 [NC,L] 

但是這不起作用。我不明白爲什麼作爲正則表達式匹配。

+0

什麼是不工作,什麼是錯誤? – anubhava

回答

0

請試試這個:

RewriteRule ^board\/([aA-zZ0-9-]+)\/?$ board.php?b=$1 [NC,L] 

我認爲正斜槓需要轉義正斜槓。

此工具可幫助與正則表達式測試:

http://regexr.com/ 
+0

可悲的是,這仍然行不通。 – sarrrrek

0

嘗試本作,

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^board/([A-Za-z0-9-]+)/?$ board.php?b=$1 [QSA,NC,L] 

你可能會得到所謂404沒有發現因爲Apache是​​假設傳入URL爲目錄。