PHP 스크립트 분할 오류 문제를 해결하는 방법

藏色散人
풀어 주다: 2023-03-05 20:56:01
원래의
2483명이 탐색했습니다.

PHP 스크립트 분할 오류 해결 방법: 1. PHP 버전을 업그레이드합니다. 2. "/etc/pki/nssdb/pkcs11.txt" 및 "/etc/pki/nssdb/cert9.db" 파일을 삭제합니다.

PHP 스크립트 분할 오류 문제를 해결하는 방법

권장 사항: "PHP 비디오 튜토리얼"

PHP에서 file_get_contents 또는 컬을 사용하여 https 도메인 이름을 요청하면 세그먼트 오류 오류가 발생합니다.

이 PHP 명령을 실행하면 세그먼트 오류가 발생합니다.

var_dump(file_get_contents("https://www.baidu.com"));
로그인 후 복사

해결 방법:

1. PHP 버전을 업그레이드하면 문제가 재현되지 않습니다. 실행 코드는 PHP5.2)

2입니다. 안타깝게도 그렇지 않았습니다. 여기서는 /etc/pki/nssdb/pkcs11.txt 및 /etc/pki/nssdb/cert9.db를 제거하는 것이 핵심인 것 같습니다. :-( (Centos 버그에 대해 제공되는 솔루션은 연습 후에는 작동하지만 삭제하면 곧 다시 나타납니다)

근데 왜 세그폴트가 발생하는 걸까요?

PHP 버전:

PHP 5.2.14 (cli) (built: Jul 3 2016 23:56:15) Copyright (c) 1997-2010 The PHP Group Zend Engine v2.2.0, Copyright (c) 1998-2010 Zend Technologies with eAccelerator v1.0-dev, Copyright (c) 2004-2012 eAccelerator, by eAccelerator
로그인 후 복사

Linux 시스템 정보:

LSB Version: :core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarch Distributor ID: CentOS Description: CentOS release 6.3 (Final) Release: 6.3 Codename: Final
로그인 후 복사

커널별 보기 log 및 gdb 레코드를 보면 libsqlite에서 문제가 발생하는 것을 확인할 수 있습니다

커널 로그:

tail -f /var/log/messages kernel: php[26564]: segfault at 8048 ip 00007f7a72fede9c sp 00007fffec90edf0 error 4 in libsqlite3.so.0.8.6[7f7a72fd1000+8c000]
로그인 후 복사

gdb 레코드:

Program received signal SIGSEGV, Segmentation fault. 0x00007fffe9651e9c in sqlite3_file_control () from /usr/lib64/libsqlite3.so.0
로그인 후 복사

Centos 버그 목록에서 이 버그에 대한 설명을 찾을 수 있습니다:

https://bugs.centos.org/view.php?id=7399 https://www.mankier.com/5/cert9.db
로그인 후 복사

위 내용은 PHP 스크립트 분할 오류 문제를 해결하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
php
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!