2014-09-07 7 views
2

내 공유 호스팅 계정에서 500 개의 내부 서버 오류가 발생하지만 내 주 루트 public_html 디렉토리에서 PHP 파일에 액세스하려고 할 때만 발생합니다. 하위 디렉토리에있는 모든 PHP 파일은 절대적으로 좋습니다.500 public_html에서만 내부 서버 오류가 발생합니까?

모든 권한 (모든 파일이 755로 설정 됨)이 모두 올바르게 설정되어있는 것처럼 보입니다. 다시 쓰기 엔진은 .htaccess에 하나의 다시 쓰기 규칙이있어 문제가 없지만 모든 규칙을 삭제하고 문제가 지속되는지 확인해야합니다. 로드해야 모든 .so 파일

[07-Sep-2014 16:15:36 Europe/London] PHP Warning: PHP Startup: Unable to load dynamic 
library '/usr/local/lib/php/extensions/no-debug-non-zts-20090626/pdo_mysql.so' - 
/usr/local/lib/php/extensions/no-debug-non-zts-20090626/pdo_mysql.so: 
cannot open shared object file: No such file or directory in Unknown on line 0 

경고 반복 :

오류 로그 내가 시도하고 파일에 액세스이 모든 시간을 보여줍니다. 모든 HTML 파일과 이미지 파일은 루트에서 직접 작동합니다. 문제를 일으키는 PHP 파일 일뿐입니다.

공유 호스팅이므로 Apache를 다시 시작할 수 없지만 그 외의 경우 php.ini을 편집 할 수있는 전체 액세스 권한이 있습니다.

어떻게 해결할 수 있습니까?

추가 정보 :

내가 전에 언급하지 않았지만, 그러나 나는 또한이 오류를 얻을 : PHP의 이전 버전에서

[07-Sep-2014 16:15:36 Europe/London] PHP Fatal error: Directive 'allow_call_time_pass_reference' is no longer available in PHP in Unknown on line 0

+1

로딩 라이브러리가 특정 디렉토리에서 수행 될 수 없기 때문에이 문제는 다소 이상합니다. 이 오류 메시지가 현재 받고있는 500과 관련이 있습니까? 그것들은 경고가 아니고 에러가 아닙니다 (그래서 그들은 500으로 이어져서는 안됩니다). 그리고 PHP 시작시 생성됩니다 ... –

+0

안녕하세요, 저는 경고가 아닌 실제 오류 하나를 발견했습니다 :'[07-Sep-2014 16:15 : 36 Europe/London] PHP 치명적 오류 : 'allow_call_time_pass_reference'지시어가 PHP에서 Unknown in line 0에 더 이상 존재하지 않습니다. ' 더 이상 의미가 있습니까? 도움 주셔서 감사합니다 – JoeP

+1

그래. 이 지시어는 PHP> 5.4에서 제거되었습니다. 이전에는이 ​​기능을 사용하지 않으려했습니다. –

답변

2

을, 당신은 함수에 변수를 전달 할 수 있었다 함수가 해당 인수를 참조로 전달하도록 지정하지 않았더라도 변수를 & 부호로 계속 처리하여 참조로 참조하십시오. 이 기능은 지시문 allow_call_time_pass_reference을 사용하여 제어 할 수 있습니다. 그것을 사용하는 것은 PHP 5.0 이후에 비추천되었으며 5.4에서 삭제되었습니다.

php.ini에서 제거하십시오. 오류는 없어야합니다.

참조로 변수를 전달해야하는 경우 먼저 참조로 전달할 함수 매개 변수를 지정하거나 배열에서 값을 더럽지 만 작동하는 대체 코드로 중첩합니다.

관련 문제