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