>백엔드 개발 >PHP 튜토리얼 >ThinkPHP가 디버그 모드 및 Error_php 팁을 끌 때 문제 해결 문제 요약

ThinkPHP가 디버그 모드 및 Error_php 팁을 끌 때 문제 해결 문제 요약

WBOY
WBOY원래의
2016-05-16 20:16:53873검색

사례 1:

최근 ThinkPHP를 이용하여 프로젝트를 개발했는데, 로컬 개발 및 테스트를 완료하고 서버에 업로드한 후 처음으로 정상적으로 열렸는데, 페이지를 새로 고쳤을 때 '페이지 디버깅 오류, 찾을 수 없습니다. 다시 시도해 주세요'라는 메시지가 나타납니다.

로컬 설정인 Define('APP_DEBUG', false)이 문제 없이 실행되는 것은 분명한데, 서버에 올려놓으면 왜 문제가 발생하는 걸까요?

baidu, Google은 아직 해결책을 찾지 못했는데 갑자기 프로젝트 APP_Name/Runtime/Cache 디렉터리와 APP_Name/Runtime/Logs 디렉터리에 쓰기 권한이 없다는 것을 발견하여 과감하게 F5로 변경했습니다. 아 뭐, 엄마는 더 이상 오류 메시지에 대해 걱정할 필요가 없습니다!

사례 2:

ThinkPHP에서는 APP_DEBUG 상수를 false로 설정한 후 다음과 유사한 문제가 발생했습니다.

코드 복사 코드는 다음과 같습니다.

구문 분석 오류: 구문 오류, E:PHPnowhtdocsojbakRuntime~app.php의 1행에 예상치 못한 T_STRING

아니면 "서버 오류"를 직접 신고할 경우 어떻게 해야 하나요?
PHP와 관련된 내용이므로 php.ini에서 구성을 수정하세요

코드 복사 코드는 다음과 같습니다.

short_open_tag = 켜짐

app.class.php의 빌드 메소드 때문에:
디버깅 모드를 켜면 해당 파일의 내용을 얻어와서 파일로 재조립하게 됩니다. 이때
가 자동으로 추가됩니다. 보시는 것이 바로 ~app.php 파일입니다
하지만 디버깅 모드를 활성화하지 않으면 매번 관련 파일이 로드되므로 오류가 노출됩니다.

사례 3:

thinkphp에서 APP_DEBUG를 false로 설정한 후 데이터 쿼리(선택, 찾기 등)는 항상 첫 번째 항목을 표시합니다. . 하지만 APP_DEBUG를 true로 설정하고 나면 정상이 됩니다. . 왜 그래? 해결책이 있나요?

일반적으로 APP_DEBUG는 디버깅 모드입니다. 온라인 환경에 배치할 때는 false로 설정해 보세요. .

선택 쿼리를 직접 찾고, 디버그가 꺼진 상태에서 파일 쓰기를 사용하여 쿼리 이후 생성된 SQL을 디버깅합니다.

위 내용은 이 글의 전체 내용입니다. 모두 마음에 드셨으면 좋겠습니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.