簡體   English   中英

500內部服務器錯誤-register_globals

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM