php設置錯誤
A. php中如何開啟錯誤提示輸出
開啟步驟如下:
1. 打開php.ini文件。
以ubuntu為例,這個文件在: /etc/php5/apache2 目錄下為例。
2. 搜索並修改下行,把Off值改成On
display_errors = Off
3. 搜索下行
error_reporting = E_ALL & ~E_NOTICE
或者搜索:
error_reporting = E_ALL & ~E_DEPRECATED
修改為
error_reporting = E_ALL | E_STRICT
4. 修改Apache的 httpd.conf,
以Ubuntu 為例, 這個文件在:/etc/apache2/ 目錄下,這是一個空白文件。
添加以下兩行:
php_flag display_errors on
php_value error_reporting 2039
5. 重啟Apache,就OK了。
重啟命令: :sudo /etc/init.d/apache2 restart.
B. 如何處理php服務的500錯誤
一、可能是php配置問題
php.ini
short_open_tag = Off
改為 short_open_tag = On
二、可能是系統問題,請使用如下方法解決:
方法(一)
1、控制面板->管理工具->計算機管理(雙擊)->計算機管理(本地)->本地用戶和組(點擊前面的加號)->用戶(單擊)->ISUC(右鍵-設置密碼,設為123,確定)->Iwm(右鍵-設置密碼,設為123,確定)->Administrator(右鍵-設置密碼,設為123,確定)->關閉計算機管理
2、管理工具-組件服務(雙擊)->下面有個「組件服務(雙擊)」->計算機(文件夾)(雙擊)->我的電腦(打開)->com+應用程序-找到「IIS out-of-process」文件夾(右鍵,打開屬性)->單擊「標識」->出現「下列用戶」->用戶密碼和確認密碼(默認)->點擊「瀏覽」->點擊「高級」->找到右面的「立即查找」->單擊第一個「Administer」->單擊確定->出來後再點擊確定->應用->確定
3、一般情況下問題解決,一切OK
C. php504錯誤
解決方式:
一般默認的fastcgi進程響應的緩沖區是8K,這時可以設置大一點,在nginx.conf里,加入:fastcgi_buffers 8 128k,這表示設置fastcgi緩沖區為8塊128k大小的空間。
當然如果在進行某一項即時的操作, 可能需要nginx的超時參數調大點,例如設置成60秒:send_timeout 60;經過這兩個參數的調整,一般不會再提示「504 Gateway Time-out」錯誤,問題基本解決。
有時候網站需要對php-fpm和nginx進行配置修改。因為這種情況下,也會出現「504 Gateway Time-out」錯誤提示。而這時候Nginx 504 Gateway Time-out的含義就是所請求的網關沒有請求到,簡單來說就是沒有請求到可以執行的PHP-CGI。
解決方式:
更改php-fpm的幾處配置即可:
把max_children由之前的10改為現在的30,這樣就可以保證有充足的php-cgi進程可以被使用;
把request_terminate_timeout由之前的0s改為60s,這樣php-cgi進程處理腳本的超時時間就是60秒,可以防止進程都被掛起,提高利用效率。
接著再更改nginx的幾個配置項,減少FastCGI的請求次數,盡量維持buffers不變:
fastcgi_buffers由 4 64k 改為 2 256k;
fastcgi_buffer_size 由 64k 改為 128K;
fastcgi_busy_buffers_size 由 128K 改為 256K;
fastcgi_temp_file_write_size 由 128K 改為 256K。
重新載入php-fpm和nginx的配置,再次測試,如果沒有出現「504 Gateway Time-out」錯誤,問題便解決了。
解決方式:
將php-fpm的處理方式改成apache模式即可。