今天在配置php網(wǎng)站的時(shí)候,經(jīng)常會(huì)在頁首出現(xiàn)Warning: session_start() [function.session-start]: Cannot send session cache limiter,也不影響頁面打開。
就到百度中查找了一下,實(shí)際解決了問題,先記錄下來,以備后患,呵呵
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at D:orther objectphptestsession.php:1) in D:orther objectphptestsession.php on line 2
1. 如果用dreamwever的話并使用utf-8編碼,請(qǐng)?jiān)谀硞€(gè)頁面上右鍵==>頁面屬性==>標(biāo)題/編碼,就會(huì)看到一個(gè)“包括Unicode 簽名(BOM)(S)”的復(fù)選框,把它取消即可。這是因?yàn)閡tf-8編碼文件含有的bom原因,而php4,5都是不支持bom的。
2. 修改php.ini中的session.auto_start = 0 為 session.auto_start = 1
3. 還有一種方法直接給session_start()加上@session_start()就沒事了。
4. 該信息說明在啟用session的時(shí)候,已經(jīng)有內(nèi)容輸出,可在最上面加 ob_start()。
ob是output buffering的簡稱,ob用對(duì)了,能加速網(wǎng)頁的速度,但是盲目的加上ob函數(shù),只會(huì)增加CPU額外的負(fù)擔(dān)。ob的基本作用。
1).防止在瀏覽器有輸出之后再使用setcookie,或者h(yuǎn)eader,session_start函數(shù)造成的錯(cuò)誤。
2).捕捉對(duì)一些不可獲取的函數(shù)的輸出,比如phpinfo會(huì)輸出一大堆的HTML,但是我們無法用一個(gè)變量例如$info=phpinfo();來捕捉,這時(shí)候ob就管用了。
3).對(duì)輸出的內(nèi)容進(jìn)行處理,例如進(jìn)行g(shù)zip壓縮,例如進(jìn)行簡繁轉(zhuǎn)換,例如進(jìn)行一些字符串替換。
4).生成靜態(tài)文件,其實(shí)就是捕捉整頁的輸出,然后存成文件,經(jīng)常在生成HTML,或者整頁緩存中使用。
5. 在PHP文件頭部直接加下屏蔽警告錯(cuò)誤的代碼:
PHP代碼
<?php
//如有session_star(),放在session_star()后面
error_reporting(E_ERROR);
ini_set("display_errors","Off");
//你的php代碼
?>
[ 上一篇 ] 網(wǎng)頁中常用的設(shè)計(jì)字體宋體與黑體的知識(shí)
[ 下一篇 ] 如何在自己的網(wǎng)站上面調(diào)用新浪微博
版權(quán)所有:啟邁科技-合肥網(wǎng)站建設(shè) 皖I(lǐng)CP備19009304號(hào)-1 皖公網(wǎng)安備 34010402702162號(hào)
網(wǎng)站建設(shè),網(wǎng)站設(shè)計(jì)公司啟邁科技,為眾多企業(yè)提供網(wǎng)站建設(shè),網(wǎng)站制作,響應(yīng)式網(wǎng)站設(shè)計(jì),手機(jī)網(wǎng)站建設(shè),微網(wǎng)站,模板建站,企業(yè)郵箱等一站式互聯(lián)網(wǎng)解決方案和建站服務(wù)10年。