.htaccess目錄偽靜態規則和目錄排除
阿新 • • 發佈:2019-02-03
RewriteRule ([a-z0-9A-Z_\-]+)(/)? /cunfang1/$1/ [L]
RewriteCond $1 !^(DATA|images|otherThings)
將上述程式碼放置在第一段規則之前即可實現指定目錄排除的功能。
最近在.htaccess的偽靜態中遇到一些問題,下面記錄一下遇到的疑問和解決的方法:
1..htaccess的偽靜態規則寫法
# 根目錄資料夾訪問偽靜態到cunfang1下
RewriteRule ^([a-z0-9A-Z_\-]+)(/)?$ /cunfang1/$1/ [L]
上面的規則可以將所有針對網站根目錄下資料夾的訪問,偽靜態到cunfang1下面的對應資料夾。
2.排除某些目錄,讓第一條規則無法對其產生作用,比如網站根目錄下的/DATA、/images等等。
# 根目錄資料夾訪問排除規則
RewriteCond $1 !^(DATA|images|otherThings)
將上述程式碼放置在第一段規則之前即可實現指定目錄排除的功能。
RewriteRule /([a-z0-9A-Z_\-]+)(/)? /plus/search.php?keyword=$1 [L] RewriteCond %{REQUEST_URI} !^/1.html RewriteCond %{REQUEST_FILENAME} !\.(html)$ RewriteCond %{REQUEST_FILENAME} !\.(xml)|.(html)$
RewriteCond %{REQUEST_URI} !^/1.html|robots.txt RewriteCond %{HTTP_HOST} ^aaa\.com$ [NC]
RewriteRule ^(.*)$