我試圖做這樣RewriteEngine敘述和類別鏈接
business/index.html
business/
business
東西打開categories.php?prefix=$1
我已經習慣
RewriteRule ^([A-Za-z0-9-]+)/?(index.html)?$ categories.php?prefix=$1 [QSA,L]
了偉大的工作,但是當打開/ ADMIN其一個真實的文件夾,它把它看作一個類別 我怎麼能排除這個
我試圖做這樣RewriteEngine敘述和類別鏈接
business/index.html
business/
business
東西打開categories.php?prefix=$1
我已經習慣
RewriteRule ^([A-Za-z0-9-]+)/?(index.html)?$ categories.php?prefix=$1 [QSA,L]
了偉大的工作,但是當打開/ ADMIN其一個真實的文件夾,它把它看作一個類別 我怎麼能排除這個
Thi s會查看路徑是否以admin
或images
開頭。如果有,規則將不適用。如果不是(即如果它與別的開始),該規則將適用:
# Only apply to files that exist (uncomment to use):
#RewriteCond %{REQUEST_FILENAME} -f
# Only apply if the request is NOT for a directory (uncomment to use):
#RewriteCond %{REQUEST_FILENAME} !-d
# Only apply when the requested URI begins with admin or images (Not Case-sensitive):
RewriteCond %{REQUEST_URI} !^(/[admin|images]/) [NC]
# If all conditions are met, apply the following rule:
RewriteRule ^([A-Za-z0-9-]+)/?(index.html)?$ categories.php?prefix=$1 [QSA,L]
如果我想添加更多? admin和images –
你的意思是'/ admin/images'或'/ admin'和'/ images'分開嗎? – jerdiggity
及其不工作 –
你可以這樣做:
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([A-Za-z0-9-]+)/?(index.html)?$ categories.php?prefix=$1 [QSA,L]
這將改寫所有網址,除非真正的文件夾或文件被打開。
你只需要這個'admin',還是所有現有的文件夾?如果是後者,則在「RewriteCond%{REQUEST_FILENAME}!-d」行前加上該規則。 – raina77ow
@ raina77ow請給我代碼 –
你是什麼意思?它是代碼。在'RewriteRule'的行之前用'RewriteCond'添加該行。 – raina77ow