[英]url rewriting does not return $_GET
我已經在網站上為url重寫設置了一些規則。
其實我在本地主機上
我已經在.htaccess中設置了
php_flag output_buffering on
Options +FollowSymlinks
RewriteEngine On
RewriteRule ^p/([^/]*)\.html$ /?p=$1 [L]
實際上,URL重寫確實可以工作(我在css,js和lib php的標頭中添加了基本href
我遇到的麻煩是它不會返回$ _GET參數。
我編寫了一個函數,用於將頁面包含在文檔的主框架中,因此我們有了
function includePage(){
if(isset($_GET['p'])){
$page = mysql_real_escape_string($_GET['p']);
if(file_exists('p/'.$page.'.phtml')){
include('p/'.$page.'.phtml');
}else{
include('p/404.phtml');
}
}else{
include('p/accueil.phtml');
}
}
實際上,它不起作用,每次出現其他情況時都會返回給我。
我試圖做一個var_dump($_GET['p'])
它返回給我一個未定義的var
網址看起來像這樣:
index.php / p / realisations,因此在這種情況下,參數$ _GET ['p']應該等於“ realisations”,實際上它不起作用。
我不知道我哪里錯了。 我做了一些研究但沒有成功。
任何幫助將不勝感激。
嘗試以下規則:
RewriteEngine On
RewriteRule ^index\.php/p/([^/.]+)(\.html)?$ ?p=$1 [L,NC,QSA]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.