既然我的腳已經被.htaccess弄溼了,我還有一個新問題。在很多教程我已經收藏之一,筆者建議把這段代碼在.htaccess文件的開頭:.htaccess代碼,這個例子很好的編碼習慣嗎?
AddDefaultCharset UTF-8
RewriteEngine On
RewriteBase/
我可以理解,避免與第一行解析問題的問題,還等什麼我想知道的是,除了RewriteEngine On
還有其他兩種線路是好的做法還是隻是增加了膨脹?
非常感謝!
既然我的腳已經被.htaccess弄溼了,我還有一個新問題。在很多教程我已經收藏之一,筆者建議把這段代碼在.htaccess文件的開頭:.htaccess代碼,這個例子很好的編碼習慣嗎?
AddDefaultCharset UTF-8
RewriteEngine On
RewriteBase/
我可以理解,避免與第一行解析問題的問題,還等什麼我想知道的是,除了RewriteEngine On
還有其他兩種線路是好的做法還是隻是增加了膨脹?
非常感謝!
RewriteBase /
行有時用於解析目標中的相對URI和/或RewriteRule
的模式。例如,如果一個htaccess文件是在/foo
目錄,你有可能看起來像這樣的規則:
RewriteEngine On
RewriteBase /foo/
RewriteRule ^bar$ index.php?bar [L]
這裏,規則的目標index.php?bar
是一個相對的URI和基地被前面加上,導致URI:/foo/index.php?bar
。當規則的目標是相對的時候,apache會猜測URI是一個文件路徑還是一個URL路徑,並且它並不總是正確猜測。通過RewriteBase /foo/
,apache知道/foo/index.php
是一個URL路徑。可能有重寫基地與它所在的文件夾不匹配的情況,但結果仍然相同。它充當規則中相對URI的URI基礎。
在沒有傷害的情況下,除非出於某種原因,您希望某些相對URI實際映射到文件路徑。
的AddDefaultCharset
指令並不適用於該字符集的htaccess文件中,它是Web服務器給予請求時,該請求內容text/html
類型或text/plain
的響應的一部分。再說一次,除非你是文本或html內容,其實其他編碼(例如* shift_jis *),否則不會傷害你的htaccess文件。
非常感謝!所有的好消息,我想代表該教程作者代表這是一個編碼偏好。優秀! – mileaminute 2013-04-09 01:04:44