新做一個項目,使用帝國備份王做數據備份,在測試服務器(apache2+php5.3)上一切正常,更新到正式服務器(apache2+php5.5)上時,訪問卻是一片空白,什么都沒有提示。
用firebug看請求:
返回的狀態是:500 Internal Server Error
500錯誤一般情況是服務器內部錯誤,所以,登錄查看apache錯誤日志。
錯誤顯示的1246行其實是程序的結束標簽了,怎么都不可能有錯誤,并且前后代碼都很規范,不應該出現這種錯誤才對,網上看了很多這個錯誤的解決辦法,都沒解決。
最后懷疑是php配置有問題。
把正式服務器上的短標簽開啟,問題居然解決了。
打開php.ini,將
short_open_tag = Off
修改為
short_open_tag = On
然后重啟下服務,居然可以訪問了。
但是有很多虛擬主機用戶沒有修改php的權限怎么辦呢,提供第二個方法:
找到帝國備份王安裝文件upload文件夾下的class文件夾下面的function.php,大概是在921行:
把mysql_escape_string改為:mysql_real_escape_string
OK!問題解決!!!
其實我知道,這個應該和開沒開短標簽沒太大的關系,因為代碼中也沒見用短標簽的寫法,但既然開啟短標簽解決了問題,那做個記錄,或許能幫助到其他人。
新聞熱點
疑難解答