php8.1 get_magic_quotes_gpc() 및 common.php 에러 어떻게 해결하나요?
본문
Stack trace:
#0 /home/li/home/adm/_common.php(3): include_once()
#1 /home/li/home/adm/index.php(3): include_once('...')
#2 {main}
thrown in /home/li/home/common.php on line 98" while reading response header from upstream, client: 112.133.44.109, server: liwerhome.com, request: "GET /adm/ HTTP/1.1", upstream: "fastcgi://unix:/run/php/php8.1-fpm.sock:", host: "liwerhome.com"
2022/02/17 15:30:38 [error] 27519#27519: *256 FastCGI sent in stderr: "PHP message: PHP Fatal error: Uncaught Error: Call to undefined function get_magic_quotes_gpc() in /home/li/home/common.php:98
Stack trace:
#0 /home/li/home/adm/_common.php(3): include_once()
#1 /home/li/home/adm/index.php(3): include_once('...')
#2 {main}
thrown in /home/li/home/common.php on line 98" while reading response header from upstream, client: 183.103.74.109, server: ijkkw.com, request: "GET /adm/index.php HTTP/1.1", upstream: "fastcgi://unix:/run/php/php8.1-fpm.sock:", host: "liwerhome.com"
에러가 계속 error.log에 쌓이고 페이지가 뜨지 않아서 질문 올려봅니다.
패치를 하라면 어떻게 패치할지도 궁금합니다.
adm 도 접속이 안되네요.. ㅠ.ㅠ
답변 3
현재 그누버전에서는 해당함수가 있는지 확인합니다.
원본 소스에서 따왔으니 아래처럼 변경해보세요.
//==============================================================================
// SQL Injection 등으로 부터 보호를 위해 sql_escape_string() 적용
//------------------------------------------------------------------------------
// magic_quotes_gpc 에 의한 backslashes 제거
if (7.0 > (float)phpversion()) {
if (function_exists('get_magic_quotes_gpc') && get_magic_quotes_gpc()) {
$_POST = array_map_deep('stripslashes', $_POST);
$_GET = array_map_deep('stripslashes', $_GET);
$_COOKIE = array_map_deep('stripslashes', $_COOKIE);
$_REQUEST = array_map_deep('stripslashes', $_REQUEST);
}
}
그누 버전 몇인가요
예전 버전으로 해서 그랬네요..
LIB, JS, common.php 등을 업그레이드 하니 제대로 되네요.. 흠...
하지만 일부 사이트는 수정해야할게 많네요...