기록 nginx 두 가지 문제 해결

2653 단어
1: recv 오류
recv() failed (104: Connection reset by peer) while reading client request line
이런 문제 가 발생 한 것 은 주로 네트워크 문제 때문이다. aizher. com 서버 를 이전 하 는 과정 에서 이런 문제 에 부 딪 히 면 상황 이 비교적 특수 하고 네트워크 문제 이기 도 하지만 인터넷 에서 로 컬 네트워크 포트 충돌 문 제 를 묘사 하 는 것 이 아니다.
이런 문제 가 발생 한 이 유 는 서부 데이터 의 서버 에 화이트 리스트 를 설정 해 야 서버 에 접근 할 수 있 기 때 문 입 니 다. 저 는 예전 에 DNS 를 해서 서부 데이터 의 서버 에 분 석 했 을 뿐 입 니 다.
첫 번 째 클 라 이언 트 는 서버 에 요청 할 수 있 지만 서부 데 이 터 는 즉시 요청 연결 을 리 셋 하여 nginx 가 연결 충전 을 알 리 고 상기 오류 가 발생 합 니 다.
해결 방안 도 간단 하 다. 서부 데이터 서버 에 화이트 리스트 를 직접 추가 하면 된다.(처음에 화이트 리스트 를 알 게 된 것 을 오 랜 만 에 잊 어 버 렸 다)
2: js, 그림 이 php 에 의 해 실 행 됩 니 다.aizher. com 서버 를 이전 하 는 과정 에서 발생 한 또 다른 문 제 는 js, css, 그리고 그림 이 php 에 의 해 실행 되 었 다 는 것 이다. (물론 이것 은 나중에 알 게 되 었 다) 처음에 전체 서버 의 페이지 가 다 써 버 렸 고 페이지 스타일 이 엉망 이 되 었 다.또한 일부 그림 은 정상적으로 불 러 올 수 있 지만, 어떤 그림 은 불 러 올 수 없습니다. png 와 jpg 는 불 러 올 수 없습니다.당시 php 설정 문제 로 N 을 한참 찾 았 지만 원인 을 찾 지 못 했다.나중
error_reporting = E_ALL & ~E_NOTICE
phop 의 notice 알림 을 열 었 는데 png 그림 을 요청 할 때 phop 문법 오 류 를 알 렸 습 니 다. 이상 하 네요. 갑자기 nginx 설정 문제 라 고 생각 했 습 니 다. 모든 요청 은 phop 에 따라 해석 되 었 습 니 다. 원래 nginx 설정 은?
server_name *.aizher.com;
        index index.html index.htm index.php;
        root /home/admin/web/;
 
        location \$ {
                fastcgi_pass    127.0.0.1:9000;
                fastcgi_index   index.php;
                include fastcgi_params;
                fastcgi_param   SCRIPT_FILENAME /home/admin/web/$fastcgi_script_name;
        }
원인 을 찾 아 다음 과 같이 조정 한다.
server_name *.aizher.com;
        index index.html index.htm index.php;
        root /home/admin/web/;
        if (!-e $request_filename) {
                rewrite  ^(.*)$  /index.php?s=$1  last;
        }
 
        location ~ .*\.(php|php5)?$ {
                fastcgi_pass    127.0.0.1:9000;
                fastcgi_index   index.php;
                include fastcgi_params;
                fastcgi_param   SCRIPT_FILENAME /home/admin/web/$fastcgi_script_name;
        }
 
        location /status {
                stub_status on;
                access_log   off;
        }
 
        location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
        {
                expires      30d;
        }
 
        location ~ .*\.(js|css)?$
        {
                expires      12h;
        }

왜 이전의 nginx 를 복사 하지 않 고 직접 사용 하 느 냐 고 물 을 지도 모른다.이 유 는 1: 이 서버 에 다른 서비스 가 있 습 니 다. nginx 파일 은 직접 덮어 쓸 수 없습니다. 이전에 사용 한 lnmp 입 니 다. 이 서버 는 모두 처음부터 구축 되 었 고 fpm 도 사용 하지 않 았 기 때문에...2: 부주의 로 형 주 를 잃 었 어 요. 이 문 제 를 너무 얕 잡 아 봐 서 쉽게 해결 할 수 있 을 거 라 고 생각 했 어 요.

좋은 웹페이지 즐겨찾기