有沒有辦法拒絕使用一個URL訪問文件,但允許使用另一個訪問?Htaccess和重寫/拒絕
例子:
實際的URL是www.domain.com/index.php但我想使用URL拒絕訪問,但我還是希望能夠以顯示使用文件www.domain.com /index.php/somestring
這是可能的嗎?
有沒有辦法拒絕使用一個URL訪問文件,但允許使用另一個訪問?Htaccess和重寫/拒絕
例子:
實際的URL是www.domain.com/index.php但我想使用URL拒絕訪問,但我還是希望能夠以顯示使用文件www.domain.com /index.php/somestring
這是可能的嗎?
而不是產生的.htaccess
與存儲在數據庫中的字符串,你會過得更好寫.htaccess
文件,以便它把「somestring」作爲GET變量。然後你會檢查數據庫中是否存在「somestring」,如果是,則顯示該頁面。否則,你做一個PHP頭重定向。
的.htaccess
RewriteRule ^index.php/([^/]*)$ /index.php?id=$1 [L]
在你index.php
第一,搶GET變量,檢查它在DB存在,如果存在,則顯示該頁面。否則,您可以使用標題重定向將用戶發送到其他頁面。
$id = $_GET['id']; // You will probably want to escape this
然後,將整個頁面包裝在if語句中,並且只在數據庫中存在id時顯示頁面。
不錯!謝謝 :-) – WebandAvec
「somestring」部分應該是一個GET變量嗎?你能給出一個小小的背景嗎?爲什麼你想阻止人們使用index.php? –
不,這只是一個字母數字字符串,將被知道。 index.php將具有不同的名稱並且是我想要隱藏的登錄文件。 – WebandAvec
是一個具體的還是有多個字符串可以代替「somestring」?如果有多個,字符串是否有特定的模式? –