簡體   English   中英

在htaccess rewriterule之后,Php會話不起作用

[英]Php sessions don't work after htaccess rewriterule

我有一個我正在嘗試設置的預訂系統。 我想為所有客戶使用相同的功能。 我已經設置了htaccess rewriterule,使其看起來像所有文件都是從www.mydomain.com/web-book/customerX/index.php運行,但實際上這些文件位於web-book文件夾中。 這只是為了很好的展示,並為每個客戶提供一個簡單的預訂鏈接。

RewriteRule ^([a-zA-Z]+)/([_a-zA-Z-]+)\.php$ /web-book/$2.php?site=$1

我也用相同的技術移動我的CSS /圖像工作正常。 javascripts工作得很好。 除了php Sessions之外,一切都很好。

問題:php $ _Session變量不起作用,這意味着我無法登錄或做任何涉及會話的事情。 必須有一些我缺少的東西? 如果可能的話,我不想在mydomain.com上訪問可訪問的會話嗎?

你是否將PHP的Session-ID附加到Querystring? 如果是這樣,請嘗試使用QSA標志:

RewriteRule ^([a-zA-Z]+)/([_a-zA-Z-]+)\.php$ /web-book/$2.php?site=$1 [QSA]

這將保留Querystring中的任何Get-Variable,包括會話ID。

檢查根文件夾中是否沒有沖突的php.ini文件。

我無意中將php.ini文件從我的本地服務器復制到遠程服務器,這樣可以防止$_SESSION在我的根目錄和子目錄之間共享。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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