我使用的.htaccess mod_rewite指令,並要完成2米不同的東西:結合的.htaccess重寫規則
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?unit=/$1 [PT,L]
以上採用指定的URL,讓我直接就通過我的index.php引導頁。
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ $1.php
以上使我的文件可以在不帶.php擴展名的情況下顯示。
使用此功能,我可以使用網址/module/function/setting
指定一個文件,它包括引導頁面上的路徑以加載[root]/module/function/setting.php
。
我需要將兩個操作合併爲一個語句,有人可以幫忙嗎?
這似乎不需要。請求'example.com/page.php'不正確。爲什麼不簡單地忽略「.php」,然後在腳本加載後追加它? '$ file = getenv('REQUEST_URI')。 '.php';'? (**注意**請確保你不只是包括基於原始URL的東西!) – Xeoncross 2013-02-18 17:00:13
好吧,我明白了,是的,這是一個選項。出於興趣,您爲什麼選擇將REQUEST_URL設置爲環境變量?當然Env最適合靜態方面,如開發/生產狀態?我如何清理原始URL,我可以使用PHP過濾器嗎? – 2013-02-18 17:12:49
'getenv()'函數允許您安全地訪問'$ _SERVER'變量,因爲Web服務器會自動設置它們。 '$ url = isset($ _ SERVER ['REQUEST_URI'])? $ _SERVER ['REQUEST_URI']:NULL;'vs'$ url = getenv('REQUEST_URI');' – Xeoncross 2013-02-18 19:47:54