PHP7.4にあげたときに見つけたエラー
-- 2022-01-14 Friday
Got error 'PHP message: PHP Fatal error: Uncaught Error: Call to undefined function mysql_connect() in /var/www/@@@@@@@@@@@@@@/fffff.php:11nStack trace:n#0 {main}n thrown in /var/www/@@@@@@@@@@@@@@/fffff.php on line 11', referer: https://www.sir-2.net/@@@@@@@@@@@@@@/ffffff.php。
ツイート
Got error 'PHP message: PHP Fatal error: Uncaught Error: Call to undefined function mysql_connect() in /var/www/@@@@@@@@@@@@@@/fffff.php:11nStack trace:n#0 {main}n thrown in /var/www/@@@@@@@@@@@@@@/fffff.php on line 11', referer: https://www.sir-2.net/@@@@@@@@@@@@@@/ffffff.php。
ツイート
昨年末にバージョンアップをして、その時に耐えうる方法で何とかやり過ごしたが、根本的なエラーについて取り組みました。
殆どブログ関係のエラーですが、まずはこれ。
てんでサッパリ、tool.phpの56行目に間違いがあることだけは分かっていたので、そこからDuckDuckGo先生に尋ねてみたら、
$ad = $pxml -> Items -> Item -> ItemAttributes -> IsAdultProduct;
これを
$ad = isset($pxml -> Items -> Item -> ItemAttributes -> IsAdultProduct);
こうするだけで解消。
次に、バイク記録ツール。
こちらは、ガソリンを入れての燃費記録や整備記録を行っているツール。
連休初日にガソリンを入れて、登録しようとすると500のエラーコードが返ってきて、「あれ?」と思って帰宅後チェック。
エラーは次のコードを吐き出していた。
11行目か・・・
しかし何一つ怪しいところはない。
もしかして、昨年末の変数の厳格化か?と思って、シングルクォーテーションを追加するとこんなエラーが出る。
全然違うエラーとなったので、これではないと思い元に戻す。
mysqlに繋ぐことが出来ないと言うエラーなので、もしかして、外部から読み込んでいるファイルに問題があるのでは?
と思って、そのファイルを開く。
そのファイルには、「”」ダブルクォーテーションを付けていたのだが、これを「’」シングルクォーテーションに変更。
無事に通過した。
何でも厳しいんだな。と実感。
目下、お悩みだったのは、このエラー。
このエラーは、DuckDuckGo先生だけでなくGoogle先生でも検索して、多く拾っているんだけど、どれもドンピシャじゃないんだよね。
それで、エラーログだけでなく、アクセスログを解析すると原因が判明した。
赤字が原因。
なんで旧ドメインにパスを繋げてくるのか不明である。
年末のマルウェア感染に影響しているのですかね。
と言う事で、これについては対策を放置することにした。
.htaccessで制限をかけようとしたんだけど失敗したし、どのみち、404_File not Foundのエラーになるので放置して良いだろう。と。
PHP7.3からPHP7.4に上げただけで、これだけの修正が必要だったことから、今年中にバージョンアップするPHP8では、どれほどの修正が必要なのか戦々恐々としています。
記事を評価してください(★1つ=悪い、★5つ=良い) この記事の平均評価:



(9人)
殆どブログ関係のエラーですが、まずはこれ。
Got error 'PHP message: PHP Notice: Trying to get property 'Items' of non-object in /var/www/dablg/module/amnbo/tool.php on line 56PHP message: PHP Notice: Trying to get property 'Item' of non-object in /var/www/dablg/module/amnbo/tool.php on line 56PHP message: PHP Notice: Trying to get property 'ItemAttributes' of non-object in /var/www/dablg/module/amnbo/tool.php on line 56PHP message: PHP Notice: Trying to get property 'IsAdultProduct' of non-object in /var/www/dablg/module/amnbo/tool.php on line 56PHP message: PHP Notice: Undefined variable: output in /var/www/dablg/module/amnbo/tool.php on line 41'
てんでサッパリ、tool.phpの56行目に間違いがあることだけは分かっていたので、そこからDuckDuckGo先生に尋ねてみたら、
$ad = $pxml -> Items -> Item -> ItemAttributes -> IsAdultProduct;
これを
$ad = isset($pxml -> Items -> Item -> ItemAttributes -> IsAdultProduct);
こうするだけで解消。
次に、バイク記録ツール。
こちらは、ガソリンを入れての燃費記録や整備記録を行っているツール。
連休初日にガソリンを入れて、登録しようとすると500のエラーコードが返ってきて、「あれ?」と思って帰宅後チェック。
エラーは次のコードを吐き出していた。
Got error 'PHP message: PHP Fatal error: Uncaught Error: Call to undefined function mysql_connect() in /var/www/@@@@@@@@@@@@@@/fffff.php:11\nStack trace:\n#0 {main}\n thrown in /var/www/@@@@@@@@@@@@@@/fffff.php on line 11', referer: https://www.sir-2.net/@@@@@@@@@@@@@@/ffffff.php
11行目か・・・
しかし何一つ怪しいところはない。
もしかして、昨年末の変数の厳格化か?と思って、シングルクォーテーションを追加するとこんなエラーが出る。
Got error 'PHP message: PHP Warning: mysqli_connect(): php_network_getaddresses: getaddrinfo failed: Name or service not known in /var/www/@@@@@@@@@@@@@@/fffff.php on line 11PHP message: PHP Warning: mysqli_connect(): (HY000/2002): php_network_getaddresses: getaddrinfo failed: Name or service not known in /var/www/@@@@@@@@@@@@@@/fffff on line 11PHP message: PHP Warning: mysqli_query() expects parameter 1 to be mysqli, bool given in /var/www/@@@@@@@@@@@@@@/fffff on line 13PHP message: PHP Warning: mysqli_query() expects parameter 1 to be mysqli, bool given in /var/www/@@@@@@@@@@@@@@/fffff on line 17PHP message: PHP Warning: mysqli_fetch_row() expects parameter 1 to be mysqli_result, null given in /var/www/@@@@@@@@@@@@@@/fffff.php on line 18PHP message: PHP Notice: Trying to access array offset on value of type null in /var/www/@@@@@@@@@@@@@@/fffff.php on line 19PHP message: PHP Warning: mysqli_free_result() expects parameter 1 to be mysqli_result, null given in /var/www/@@@@@@@@@@@@@@/fffff.php on line 21PHP message: PHP Warning: mysqli_query() expects parameter 1 to be mysqli, bool given in /var/www/@@@@@@@@@@@@@@/fffff.php on line 25PHP message: PHP Warning: mysqli_fetch_row() expects parameter 1 to be mysqli_result, null given in /var/www/@@@@@@@@@@@@@@/fffff.php on line 26PHP message: PHP Notice: Trying to access array offset on value of type null in /var/www/@@@@@@@@@@@@@@/fffff.php on line 27PHP message: PHP Warning: mysqli_free_result() expects parameter 1 to be mysqli_result, null given in /var/www/@@@@@@@@@@@@@@/fffff.php on line 28PHP message: PHP Warning: mysqli_query() expects parameter 1 to be mysqli, bool given in /var/www/@@@@@@@@@@@@@@/fffff.php on line 38PHP message: PHP Warning: mysqli_close() expects parameter 1 to be mysqli, bool given in /var/www/@@@@@@@@@@@@@@/fffff.php on line 42', referer: https://www.sir-2.net/@@@@@@@@@@@@@@/ffffff.php
全然違うエラーとなったので、これではないと思い元に戻す。
mysqlに繋ぐことが出来ないと言うエラーなので、もしかして、外部から読み込んでいるファイルに問題があるのでは?
と思って、そのファイルを開く。
そのファイルには、「”」ダブルクォーテーションを付けていたのだが、これを「’」シングルクォーテーションに変更。
無事に通過した。
何でも厳しいんだな。と実感。
目下、お悩みだったのは、このエラー。
proxy_fcgi:error AH01071: Got error 'Primary script unknown'
このエラーは、DuckDuckGo先生だけでなくGoogle先生でも検索して、多く拾っているんだけど、どれもドンピシャじゃないんだよね。
それで、エラーログだけでなく、アクセスログを解析すると原因が判明した。
【access.log】
157.55.39.77 - - [09/Jan/2022:16:24:41 +0900] "GET /index.php/files/si-r.plala.jp/index.php?e=4370 HTTP/1.1" 500 6212 "-" "Mozilla/5.0 (compatible; bingbot/2.0; +http://www.bing.com/bingbot.htm)"
【error.log】
[Sun Jan 09 16:05:30.094686 2022] [proxy_fcgi:error] [pid 193793:tid 140698741327616] [client 157.55.39.77:33856] AH01071: Got error 'Primary script unknown'
赤字が原因。
なんで旧ドメインにパスを繋げてくるのか不明である。
年末のマルウェア感染に影響しているのですかね。
と言う事で、これについては対策を放置することにした。
.htaccessで制限をかけようとしたんだけど失敗したし、どのみち、404_File not Foundのエラーになるので放置して良いだろう。と。
PHP7.3からPHP7.4に上げただけで、これだけの修正が必要だったことから、今年中にバージョンアップするPHP8では、どれほどの修正が必要なのか戦々恐々としています。
記事を評価してください(★1つ=悪い、★5つ=良い) この記事の平均評価:





コメント
コメントする
この記事のトラックバックURL
http://www.sir-2.net/dablg/tb.php/7823
トラックバック