偽靜態與重定向--RewriteBase
阿新 • • 發佈:2019-04-09
clas line not contain www 文件路徑 syn http write
[Shell] 純文本查看 復制代碼
使用RewriteBase可以重寫基準路徑,位於.htaccess文件靠頂部的位置。
代碼實例:
[Shell] 純文本查看 復制代碼1 2 3 4 5 |
# 將 RewriteEngine 模式打開
RewriteEngine On
RewriteBase /
RewriteCond %{http_host} ^softwhy.com$ [NC]
RewriteRule ^(.*)$ www.softwhy.com/$1 [R=301]
|
使用RewriteBase可以定義基準路徑,上面將當前目錄設置為基準目錄。
1 2 3 |
RewriteEngine On
RewriteBase /
RewriteRule ^forum\.htm$ forum.php [R=301]
|
上面代碼是將.html頁面重定向到對應的.php頁面。
假設虛擬空間在主機的位置是/host/antzone/,如果去掉RewriteBase /,那麽將會重定向到:
[HTML] 純文本查看 復制代碼1 |
http://www.softwhy.com/host/antzone/forum.php |
這是因為RewriteBase的默認值是當前.htaccess所在的物理路徑。
但絕大多數網站服務器URL不與物理文件路徑直接對應,而是將虛擬主機所在目錄為web站點的根目錄。
再來看一段代碼實例:
[Shell] 純文本查看 復制代碼1 2 3 |
RewriteEngine On
RewriteBase / antozne/
RewriteRule ^(.*)\.htm$ forum.php [R=301]
|
那麽將會重定向到http://www.softwhy.com/antzone/forum.php。
偽靜態與重定向--RewriteBase