[英]500 Internal Server Error - register_globals
我將網站轉移到新服務器(PHP版本5.3.8)上,該服務器具有“ Server API = CGI / FastCGI”,除了一頁(public_html / user / index.php)之外,網站運行正常。 我收到錯誤消息:
500內部服務器錯誤
然后,我將Server API更改為“ Apache 2.0 Handler”,現在得到空白頁。 phpinfo()向我顯示register_globals關閉
public_html / user /中的.htaccess具有以下內容
#deny from all
#AddType application/x-httpd-php .html
#AddHandler x-httpd-php .html
#AddHandler x-httpd-php .htm
#AddType image/x-icon .ico
php_value display_errors On
#php_value register_globals On
php_value error_reporting E_ALL
#E_COMPILE_ERROR|E_ERROR|E_CORE_ERROR
舊服務器正在運行PHP版本5.2.8
有什么建議嗎?
不推薦使用register_globals不會解釋它給內部服務器帶來的錯誤,特別是如果已將其注釋掉。
由於嘗試設置服務器無法理解或不允許的值,因此出現內部服務器錯誤。 與一般服務器錯誤一樣,apache的錯誤日志應為您提供錯誤的詳細信息。
根據經驗,我的第一個猜測是運行PHP腳本的(www)用戶未獲得通過.htaccess設置php_value:s的權限。 要設置.htaccess值,您需要在apache配置中具有AllowOverride Options或AllowOverride All特權(“ All”包括“ Options”)。 我的第一件事就是檢查一下。 php_value指令需要AllowOverride選項權限。
php_value和php_flag命令已過時,在.htaccess中使用時,將在大多數服務器上導致500個錯誤。 它們的設置應在php.ini文件或系統中的等效文件中完成。
我自己有這個錯誤。
phpinfo()-在我的網站上顯示為register_globals = off
通過2個小時的研發網絡搜索找到解決方案-將php.ini編輯為register_globals = off
並再次上傳,網站在幾秒鍾內就開始運行。
希望此解決方案可以幫助某人運行他/她的網站。
register_globals
,因為PHP 5.3已被棄用,在默認情況下關閉出於安全考慮。
有關更多信息,請參見pHP文檔 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.