Server

APACHE PHP 에러 잡기

by Progress posted Mar 23, 2016
?

단축키

Prev이전 문서

Next다음 문서

ESC닫기

크게 작게 위로 아래로 댓글로 가기 인쇄

APACHE PHP 에러 잡기

 

아파치 error.log 의 일부분이다.

[Wed Mar 23 10:33:29.776469 2016] [:error] [pid 8424:tid 4308] [client 91.229.87.158:58440] script '..../public_html/wp-login.php' not found or unable to stat
[Wed Mar 23 10:38:12.253785 2016] [mpm_winnt:notice] [pid 8652:tid 236] AH00422: Parent: Received shutdown signal -- Shutting down the server.
[Wed Mar 23 10:38:14.260041 2016] [mpm_winnt:notice] [pid 8424:tid 388] AH00364: Child: All worker threads have exited.
[Wed Mar 23 10:38:14.441065 2016] [mpm_winnt:notice] [pid 8652:tid 236] AH00430: Parent: Child process 8424 exited successfully.
[Wed Mar 23 10:38:27.552750 2016] [mpm_winnt:notice] [pid 3060:tid 476] AH00455: Apache/2.4.10 (Win64) PHP/5.6.0 configured -- resuming normal operations
[Wed Mar 23 10:38:27.552750 2016] [mpm_winnt:notice] [pid 3060:tid 476] AH00456: Apache Lounge VC11 Server built: Jul 17 2014 12:58:29
[Wed Mar 23 10:38:27.552750 2016] [core:notice] [pid 3060:tid 476] AH00094: Command line: 'C:\\AutoSet9\\Server\\bin\\httpd.exe -d ..../server -D C:\\AutoSet9\\Server\\conf\\httpd.conf'
[Wed Mar 23 10:38:27.553751 2016] [mpm_winnt:notice] [pid 3060:tid 476] AH00418: Parent: Created child process 1764
[Wed Mar 23 10:38:28.092820 2016] [mpm_winnt:notice] [pid 1764:tid 412] AH00354: Child: Starting 500 worker threads.
[Wed Mar 23 10:38:49.792609 2016] [:error] [pid 1764:tid 4396] [client 125.141.132.78:60696] script '..../public_html/zb/index.php' not found or unable to stat
[Wed Mar 23 10:43:26.502183 2016] [:error] [pid 1764:tid 4144] [client 118.184.24.167:1554] script '..../public_html/econo/write.php' not found or unable to stat
[Wed Mar 23 10:43:27.117262 2016] [:error] [pid 1764:tid 4216] [client 118.184.24.167:1555] script '..../public_html/econo/write.php' not found or unable to stat
[Wed Mar 23 10:43:27.777348 2016] [:error] [pid 1764:tid 4216] [client 118.184.24.167:1557] script '..../public_html/econo/write.php' not found or unable to stat
[Wed Mar 23 10:43:28.425430 2016] [:error] [pid 1764:tid 4324] [client 118.184.24.167:1558] script '..../public_html/econo/write.php' not found or unable to stat
[Wed Mar 23 10:46:08.705036 2016] [:error] [pid 1764:tid 4144] [client 173.194.94.160:50090] script '..../public_html/zb/index.php' not found or unable to stat
[Wed Mar 23 10:49:12.429655 2016] [autoindex:error] [pid 1764:tid 4152] [client 83.26.254.9:61270] AH01276: Cannot serve directory ..../public_html/zb/: No matching DirectoryIndex (index.php,index.html,index.htm,index.php3) found, and server-generated directory index forbidden by Options directive, referer: http://urin79.com/
[Wed Mar 23 11:25:40.822993 2016] [:error] [pid 1764:tid 4156] [client 66.249.71.43:47674] PHP Fatal error:  Call to a member function get() on null in C:\\AutoSet9\\public_html\\files\\cache\\template_compiled\\b6300ac2e2a61743f7c64efbd5176521.compiled.php on line 161
[Wed Mar 23 11:37:50.806839 2016] [core:error] [pid 1764:tid 4248] (20025)The given path contained wildcard characters: [client 72.14.199.137:49089] AH00036: access to /?page=5&mid=blog&category=9913&document_srl=436653 failed (filesystem path '..../public_html/?page=5&mid=blog&category=9913&document_srl=436653')
[Wed Mar 23 11:54:32.078562 2016] [:error] [pid 1764:tid 4308] [client 207.46.13.104:6653] PHP Fatal error:  Call to a member function get() on null in C:\\AutoSet9\\public_html\\files\\cache\\template_compiled\\4b36ef58d0f0937d718c2cc6c785fb55.compiled.php on line 170
[Wed Mar 23 12:03:00.618939 2016] [:error] [pid 1764:tid 4300] [client 74.125.93.161:42906] script '..../public_html/zb/index.php' not found or unable to stat
 

 

도대체 누가 이처럼 많은 에러를 발생시키는가?

php 오류도 많고 있지도 않은 숨긴 곳도 어떻게 해서든 들어가 볼 기세다....

무서워!!!

 

Apache Error: No matching DirectoryIndex (index.html) found

mod_authz_core 에러 가능성... Directory 접근 제한 해제로 해결가능하다.

apache 2.4.대 이전 버전 같은 경우 [Allow from all] 옵션을 사용하지만 apache 2.4 버전에서는 아래와 같이 세팅한다.

 

<Directory "/" >

~~~

Require all granted

</Directory>

 

Option 같은 경우
 

<Directory "/" >

Options +Indexes

Require all granted

</Directory>

 

위와 같이 + 기호를 사용하여 세팅한다.

 

참고 : apache 접근 제한

http://httpd.apache.org/docs/2.4/upgrading.html

 

So, when attempting to access phpMyAdmin, Apache throws the following error:

[autoindex:error] [pid 20115] [client 10.30.6.80:50800] AH01276: Cannot serve directory /usr/share/phpMyAdmin/: No matching DirectoryIndex (index.html) found, and server-generated directory index forbidden by Options directive

In this case we want to add index.php to the DirectoryIndex directive.

vim /etc/httpd/conf/httpd.conf

Change:

<IfModule dir_module>
DirectoryIndex index.html
</IfModule>

to:

<IfModule dir_module>
DirectoryIndex index.html index.php
</IfModule>
 

 

 

script '..../public_html/econo/write.php' not found or unable to stat

PHP Notice: Undefined offset:

php.ini를 수정하시면 됩니다 

쉬운 방법은 php.ini 화일에서 다음 부분을 찾아서 적절히 바꿔 주면 됩니다.         
Edit your php.ini, find this line

;error_reporting = E_ALL & ~E_NOTICE

위 처럼 된 부분을 아래 처럼  코멘트를 없애 주시면 됩니다.
개발용이 아니고 production용 서버라면..
에러 부분만 켜놓고..노티스..기타 등은 off해 놓고 쓰지요 보통

error_reporting = E_ALL & ~E_NOTICE