簡體   English   中英

網址重寫未返回$ _GET

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM