linux로 centos 설치에서 php 소스 배포까지 환경 구축했지만 브라우저 오류 나올 때의 대처법
CASE1.nginx 오류 페이지가 표시되면
아래와 같은 에러, 원래 nginx의 기동조차 할 수 없다.
#nginxの再起動
sudo systemctl restart nginx
#このコマンドを使うと以下のようなエラーが発生する。
Job for nginx.service failed because the control process exited with error code.
See "systemctl status nginx.service"and "journalctl -xe"for details.
에러 내용으로서는 nginx는 실행할 수 없었다.
"systemctl status nginx.service"와 "journalctl -xe"자세히 알아보기
[root@localhost www]# sudo systemctl -l status nginx.service
● nginx.service - nginx - high performance web server
Loaded: loaded (/usr/lib/systemd/system/nginx.service; enabled; vendor preset: disabled)
Active: failed (Result: exit-code) since 木 2020-08-13 15:42:14 JST; 5s ago
Docs: http://nginx.org/en/docs/
Process: 2591 ExecStart=/usr/sbin/nginx -c /etc/nginx/nginx.conf (code=exited, status=1/FAILURE)
8月 13 15:42:11 localhost nginx[2591]: nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
8月 13 15:42:12 localhost nginx[2591]: nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
8月 13 15:42:12 localhost nginx[2591]: nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
8月 13 15:42:13 localhost nginx[2591]: nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
8月 13 15:42:13 localhost nginx[2591]: nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
8月 13 15:42:14 localhost nginx[2591]: nginx: [emerg] still could not bind()
8月 13 15:42:14 localhost systemd[1]: nginx.service: control process exited, code=exited status=1
8月 13 15:42:14 localhost systemd[1]: Failed to start nginx - high performance web server.
8月 13 15:42:14 localhost systemd[1]: Unit nginx.service entered failed state.
8月 13 15:42:14 localhost systemd[1]: nginx.service failed.
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
여기의 에러로, 80번 포트는 이미 사용되고 있기 때문에 실행할 수 없다고 있다.
그래서 80번 포트에서 무엇이 사용되고 있는지를 확인한다.
sudo lsof -i :80
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
httpd 2776 apache 4u IPv6 25135 0t0 TCP *:http (LISTEN)
httpd 2777 apache 4u IPv6 25135 0t0 TCP *:http (LISTEN)
httpd 2778 apache 4u IPv6 25135 0t0 TCP *:http (LISTEN)
httpd 2779 apache 4u IPv6 25135 0t0 TCP *:http (LISTEN)
httpd 2780 apache 4u IPv6 25135 0t0 TCP *:http (LISTEN)
httpd 2781 apache 4u IPv6 25135 0t0 TCP *:http (LISTEN)
nginx에서 열고 싶었지만 apache가 80 번을 점령했습니다.
그래서 apache를 제거합니다.
sudo yum remove -y httpd apr apr-util httpd-tools
#nginxを再起動
sudo systemctl restart nginx
#nginxを自動起動登録
systemctl enable nginx
이제 nginx를 시작할 수 있습니다.
마지막으로 nginx -t 명령으로 nginx 설정 파일의 구문에 문제가 있는지 확인할 수 있습니다.
nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
CASE2.nginx가 시작되었지만 php-fpm이 제대로 작동하지 않는 경우
An error occurred.
Sorry, the page you are looking for is currently unavailable.
Please try again later.
If you are the system administrator of this resource then you should check the error log for details.
Faithfully yours, nginx.
우선, 에러 로그를 보고, 원인을 확인, 해명한다.
오류 로그는/var/log/nginx/error.log 또는/var/log/php-fpm/error.log이므로,
cat/var/log/nginx/error.log
2020/08/13 16:26:10 [crit] 2867#2867: *2 connect() to unix:/var/run/php-fpm/php-fpm.sock failed (2: No such file or directory) while connecting to upstream, client: 192.168.0.97, server: localhost, request: "GET / HTTP/1.1", upstream: "fastcgi://unix:/var/run/php-fpm/php-fpm.sock:", host: "192.168.168.90"
2020/08/13 16:26:10 [error] 2867#2867: *2 open() "/var/www/html/favicon.ico" failed (2: No such file or directory), client: 192.168.0.97, server: localhost, request: "GET /favicon.ico HTTP/1.1", host: "192.168.168.90", referrer: "http://~~/"
오류 문장 설명
/var/www/html/favicon.ico"failed
아이콘이 없다는 오류는 브라우저를 열 수 없습니다.
connect() to unix:/var/run/php-fpm/php-fpm.sock failed
unix 소켓 파일을받을 수 없기 때문에 오류가 발생했습니다. 이것은 php-fpm의 설정 파일을 다시 써서 해결한다.
설정 파일은 주로 아래에 있기 때문에 열자.
vi /etc/php-fpm.d/www.conf
아래의 행이;로 코멘트 아웃 되고 있으면 지워 보자.
이것으로 주로 열린다.
Reference
이 문제에 관하여(linux로 centos 설치에서 php 소스 배포까지 환경 구축했지만 브라우저 오류 나올 때의 대처법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/gamelike319/items/bc34c2c824585e83d222텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)