今天剛上班,有個老客戶聯(lián)系我說他的網(wǎng)站有問題,不知道該怎么弄,讓幫忙看看,具體問題是他網(wǎng)站鏈接后面跟了個zenid,看著很是不美麗,我問他要了下服務器資料,是巴西vps,速度還挺快,一看服務器是沒問題的,是網(wǎng)站配置的問題,于是我問他要了下網(wǎng)站后臺資料,給他截圖他出現(xiàn)錯誤的位置
看到url后面多了一個zenid=***是不是很煩人啊。網(wǎng)上很多關于去掉zenid的方法,多是沒有用。其實去掉這個是非常簡單的一件事。 打開includes\functions\html_output.php文件,第一個函數(shù)定義 f
看到url后面多了一個zenid=***是不是很煩人啊。網(wǎng)上很多關于去掉zenid的方法,多是沒有用。其實去掉這個是非常簡單的一件事。
打開includes\functions\html_output.php文件,第一個函數(shù)定義
function zen_href_link($page = ”, $parameters = ”, $connection = ‘NONSSL’, $add_session_id = true, $search_engine_safe = true, $static = false, $use_dir_ws_catalog = true)
這個函數(shù)就是輸出url地址,其中$add_session_id就是標識是否輸出zenid,默認是輸出的,所以去掉它最簡單的方法就是把這個參數(shù)設置為false,這樣默認就是不輸出了。
注:以上方法經(jīng)測試并不可行
zenid只有在2種情況出現(xiàn)
when moving from different HTTP and HTTPS servers, or when SID is defined
第一種 是 HTTP HTTPS相互轉化的時候
第二種 是SID有定義 且不為空的時候
SID什么時候有定義 且不為空 可以看 http://hi.baidu.com/happyxlq/blog/item/67c2703eddda31e2838b1346.html
一般session開啟后 會在客戶端 設置一個 zenid的cookies ,如果設置成功那么 此時會產(chǎn)生一個SID ,所以會在所有的鏈接后面加個zenid='session'。
以后 的鏈接 因為SID只在第一次創(chuàng)建SESSIoN的時候才有,所以 只要session正常設置 而且能用的話。zenid只會存在一次。
也就是說 只要session正常設置 而且能用的話。zenid只會存在一次。就是 打開zencart 網(wǎng)站后,點一個鏈接 或者刷新后的 所有鏈接才會加
如果 你的zenid一直存在 那么可能是 客戶端 靜止了cookies
怎么去掉zencart 的zenid?
1,修改源代碼
在includes\functions\html_output.php中
找到 $link .= $separator . zen_output_string($sid); 大概在88行
刪除該行 或者改為
//$link .= $separator . zen_output_string($sid);
2,后臺設置
后臺——》商店設置——》Sessions
將第三項 Force Cookie Use 改為true