사례 1:
최근 ThinkPHP를 이용하여 프로젝트를 개발했는데, 로컬 개발 및 테스트를 완료하고 서버에 업로드한 후 처음으로 정상적으로 열렸는데, 페이지를 새로 고쳤을 때 '페이지 디버깅 오류, 찾을 수 없습니다. 다시 시도해 주세요'라는 메시지가 나타납니다.
로컬 설정인 Define('APP_DEBUG', false)이 문제 없이 실행되는 것은 분명한데, 서버에 올려놓으면 왜 문제가 발생하는 걸까요?
baidu, Google은 아직 해결책을 찾지 못했는데 갑자기 프로젝트 APP_Name/Runtime/Cache 디렉터리와 APP_Name/Runtime/Logs 디렉터리에 쓰기 권한이 없다는 것을 발견하여 과감하게 F5로 변경했습니다. 아 뭐, 엄마는 더 이상 오류 메시지에 대해 걱정할 필요가 없습니다!
사례 2:
ThinkPHP에서는 APP_DEBUG 상수를 false로 설정한 후 다음과 유사한 문제가 발생했습니다.
아니면 "서버 오류"를 직접 신고할 경우 어떻게 해야 하나요?
PHP와 관련된 내용이므로 php.ini에서 구성을 수정하세요
app.class.php의 빌드 메소드 때문에:
디버깅 모드를 켜면 해당 파일의 내용을 얻어와서 파일로 재조립하게 됩니다. 이때
가 자동으로 추가됩니다.
보시는 것이 바로 ~app.php 파일입니다
하지만 디버깅 모드를 활성화하지 않으면 매번 관련 파일이 로드되므로 오류가 노출됩니다.
사례 3:
thinkphp에서 APP_DEBUG를 false로 설정한 후 데이터 쿼리(선택, 찾기 등)는 항상 첫 번째 항목을 표시합니다. . 하지만 APP_DEBUG를 true로 설정하고 나면 정상이 됩니다. . 왜 그래? 해결책이 있나요?
일반적으로 APP_DEBUG는 디버깅 모드입니다. 온라인 환경에 배치할 때는 false로 설정해 보세요. .
선택 쿼리를 직접 찾고, 디버그가 꺼진 상태에서 파일 쓰기를 사용하여 쿼리 이후 생성된 SQL을 디버깅합니다.
위 내용은 이 글의 전체 내용입니다. 모두 마음에 드셨으면 좋겠습니다.