Рейтинг:0

Ошибка «FetchError нет подключения к серверу» при запуске Apache

флаг cn
[centos@ip-172-35-25-65 ~]$ лаклог
    0 CLI - Rd пинг
    0 CLI-Wr 200 19 PONG 1635280998 1,0
    0 CLI - Rd пинг
    0 CLI-Wr 200 19 PONG 1635281001 1,0
   10 SessionOpen c 127.0.0.2 55870 127.0.0.2:80
   10 ReqStart c 127.0.0.2 55870 894208400
   10 RxRequest c ПОЛУЧИТЬ
   10 RxURL с /
   10 RxProtocol c HTTP/1.0
   10 RxHeader c X-Real-IP: 198.95.75.75
   10 RxHeader c X-Forwarded-For: 198.95.75.75
   10 RxHeader c X-Forwarded-Proto: https
   10 RxHeader c X-Forwarded-Port: 80
   10 RxHeader c Хост: staging03.cherry.com
   10 RxHeader c Соединение: закрыть
   10 RxHeader c Cache-Control: max-age=0
   10 RxHeader c Авторизация: Basic aGc6am9objEyMw==
   10 RxHeader c Upgrade-Insecure-Requests: 1
   10 RxHeader c User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/95.0.4638.54 Safari/537.36
   10 RxHeader c Принять: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v =b3;q=0,9
   10 RxHeader c Accept-Encoding: gzip, deflate
   10 RxHeader c Accept-Language: en-US,en;q=0.9,fr;q=0.8
   10 RxHeader c Cookie: ajs_anonymous_id=%22424f4cd9-cbbc-4ead-83b1-273cb21cf453%22; _fbp=fb.1.1630002144579.2012566540; __qca=P0-1416512434-1630002144589; _edwvts=708154457303700204; _gid=GA1.2.1572498662.1635275261; ajs_user_id=%224543534%40mimpi99.com%22; _gcl_au=1.1.
   10 VCL_call c приемный проход
   10 VCL_call c хэш
   10 Хэш с/
   10 Хэш c staging03.cherry.com
   10 Хэш c 80
   10 Хэш c ajs_anonymous_id=%22424f4cd9-cbbc-4ead-83b1-273cb21cf453%22; _fbp=fb.1.1630002144579.2012566540; __qca=P0-1416512434-1630002144589; _edwvts=708154457303700204; _gid=GA1.2.1572498662.1635275261; ajs_user_id=%224543534%40mimpi99.com%22; _gcl_au=1.1.1880042
   10 VCL_return c хэш
   10 VCL_call c пройти пройти
   10 FetchError c нет подключения к серверу
   10 VCL_call c ошибкой доставки
   10 VCL_call c доставить доставить
   10 TxProtocol c HTTP/1.1
   10 TxStatus c 503
   10 Служба TxResponse c недоступна
   10 TxHeader c Сервер: Varnish
   10 TxHeader c Content-Type: text/html; кодировка = utf-8
   10 TxHeader c Retry-After: 5
   10 TxHeader c Content-Length: 392
   10 TxHeader c Допустимые диапазоны: байты
   10 TxHeader c Дата: вторник, 26 октября 2021 г., 20:43:23 по Гринвичу
   10 TxHeader c X-Varnish: 894208400
   10 TxHeader c Через: 1.1 лак
   10 TxHeader c Соединение: закрыть
   10 TxHeader c Возраст X: 0
   10 TxHeader c X-Cache: MISS
   10 Длина c 392
   10 ReqEnd c 894208400 1635281003,852778196 1635281003,852984428 0,000073195 0,000165701 0,000040531
   10 SessionClose c ошибка
   10 StatSess c 127.0.0.2 55870 0 1 1 0 1 0 273 392
    0 CLI - Rd пинг
    0 CLI-Wr 200 19 PONG 1635281004 1,0
    0 CLI - Rd пинг
    0 CLI-Wr 200 19 PONG 1635281007 1,0
    0 CLI - Rd пинг
    0 CLI-Wr 200 19 PONG 1635281010 1,0
    0 CLI - Rd пинг
    0 CLI-Wr 200 19 PONG 1635281013 1,0

Я попытался записать, что происходит, когда я получил со стороны клиента:

Ошибка 503 Сервис Недоступен
Сервис недоступен

Медитация Гуру:
XID: 894208400

Теперь я подумал, что это из-за того, что Apache не работает, потому что, когда я закрываю лак, я получаю ошибку шлюза 502 от nginx. Во всяком случае, я прочитал журналы ошибок:

[Вт, 26 октября, 14:53:47 2021] [уведомление] Политика SELinux включена; httpd работает как контекст unconfined_u:system_r:httpd_t:s0
[Вторник, 26 октября, 14:53:47 2021] [уведомление] Механизм suEXEC включен (оболочка: /usr/sbin/suexec)
[Вт, 26 октября, 14:53:47 2021] [уведомление] Дайджест: создание секрета для дайджест-аутентификации...
[Вт, 26 октября, 14:53:47 2021] [уведомление] Дайджест: выполнено
[Вт, 26 октября, 14:53:47 2021] [уведомление] FastCGI: инициализирован диспетчер процессов (pid 23090)
[Вт, 26 октября, 14:53:47 2021] [уведомление] Apache/2.2.15 (Unix) настроен DAV/2 mod_fastcgi/2.4.6 - возобновление нормальной работы
[Вторник, 26 октября, 14:53:52 2021] [ошибка] [клиент 127.0.0.1] Индекс каталога запрещен директивой Options: /var/www/html/
[Вторник, 26 октября, 14:53:52 2021] [ошибка] [клиент 127.0.0.1] Файл не существует: /var/www/html/favicon.ico, ссылка: http://staging03.hgreg.com/
[Вт, 26 октября, 15:01:21 2021] [ошибка] [клиент 127.0.0.1] Индекс каталога запрещен директивой Options: /var/www/html/
[Вт, 26 октября, 15:01:42 2021] [уведомление] поймал SIGTERM, выключился
[Вт, 26 октября, 15:01:42 2021] [уведомление] Политика SELinux включена; httpd работает как контекст unconfined_u:system_r:httpd_t:s0
[Вт, 26 октября, 15:01:42 2021] [уведомление] Механизм suEXEC включен (оболочка: /usr/sbin/suexec)
[Вт, 26 октября, 15:01:42 2021] [уведомление] Дайджест: создание секрета для дайджест-аутентификации...
[Вт, 26 октября, 15:01:42 2021] [уведомление] Дайджест: выполнено
[Вт, 26 октября, 15:01:42 2021] [уведомление] FastCGI: инициализирован диспетчер процессов (pid 23299)
[Вт, 26 октября, 15:01:42 2021] [уведомление] Apache/2.2.15 (Unix) настроен DAV/2 mod_fastcgi/2.4.6 - возобновление нормальной работы
[Вт, 26 октября, 15:11:56 2021] [уведомление] поймал SIGTERM, отключился

Я увидел, что SIGTERM завершает работу, поэтому я подумал, что, возможно, мне следует перезапустить Apache, и я это сделал, но я получаю ту же ошибку и никаких новых журналов в error_log.

[centos@ip-172-35-25-65 ~] $ sudo service httpd перезапуск
Остановка httpd: [ ОК ]
Запуск httpd: [ ОК ]
[centos@ip-172-35-25-65 ~]$ дата
Вт, 26 октября, 17:12:32 по восточному поясному времени 2021 г.
[centos@ip-172-35-25-65 ~]$ 

Сейчас я запускаю конфиг марионетки, но он не полностью запустился, но у меня те же файлы. Вот я и думаю в чем может быть дело. Один из файлов конфигурации Apache, который загружается после загрузки всех файлов с conf, выглядит следующим образом:

<VirtualHost *>
    ServerName preprod.staging03.cherry.com

    
    
    ServerAlias betacherry.staging03.cherry.com staging03.cherry.com
    
    

    DocumentRoot /home/staging03/version/preprod.staging03.cherry.com
    ServerAdmin [email protected]

    SetEnv environment preprod
    SetEnv project staging03

    UseCanonicalName Off
    #CustomLog /var/log/httpd/preprod.staging03.cherry.com_log combined
    #CustomLog /var/log/httpd/preprod.staging03.cherry.com-bytes_log "%{%s}t %I .\n%{%s}t %O ."

    ## User cherry # Needed for Cpanel::ApacheConf
    UserDir disabled
    UserDir enabled staging03
    
      #<IfModule mod_suphp.c>
    #    suPHP_UserGroup staging03 staging03
    #</IfModule>
    
    SuexecUserGroup staging03 staging03
    
    <directory "/home/staging03/version">
        AddHandler php5-fcgi .php
        Action php5-fcgi /php5-fcgi-staging03
        AllowOverride All

        
        AuthType Basic
        AuthName "staging03-preprod"
        AuthUserFile "/etc/httpd/conf.d/htpasswd.staging03"
        require valid-user

        satisfy any
        deny from all

        Order deny,allow
        SetEnvIf X-Hg-Internal-IP 1 HgInternalIP=1
        Allow from env=HgInternalIP

        SetEnvIf User-Agent "Amazon CloudFront" AmazonCloudFront
        Allow from env=AmazonCloudFront

        SetEnvIf User-Agent "^(.*)Lighthouse(.*)$" Lighthouse=1
        Allow from env=Lighthouse
        
    </directory>
    <IfModule concurrent_php.c>
        php5_admin_value open_basedir "/home/staging03:/usr/lib/php:/usr/local/lib/php:/tmp"
    </IfModule>
    <IfModule !concurrent_php.c>
        <IfModule mod_php5.c>
            php_admin_value open_basedir "/home/staging03:/usr/lib/php:/usr/local/lib/php:/tmp"
        </IfModule>
        <IfModule sapi_apache2.c>
            php_admin_value open_basedir "/home/staging03:/usr/lib/php:/usr/php4/lib/php:/usr/local/lib/php:/usr/local/php4/lib/php:/tmp"
        </IfModule>
    </IfModule>
    <IfModule !mod_disable_suexec.c>
        <IfModule !mod_ruid2.c>
            SuexecUserGroup staging03 staging03
        </IfModule>
    </IfModule>
    <IfModule mod_ruid2.c>
        RMode config
        RUidGid staging03 staging03
    </IfModule>
    <IfModule itk.c>
        # For more information on MPM ITK, please read:
        #   http://mpm-itk.sesse.net/
        AssignUserID staging03 staging03
    </IfModule>
</VirtualHost>

Итак, какие файлы я должен посмотреть и как проверить, что проблема не в Apache, потому что у нас есть маршрутизация nginx для лакировки, а затем маршрутизация на Apache, поэтому я думаю, что проблема в Apache, но я не получаю никакой полезной информации. из журнала, и Apache работает без проблем, он просто не обслуживает страницу, и Varnish по какой-то причине не может связаться с Apache?

Я использую CENTOS 6, и у меня есть другой сервер с такими же конфигурациями, который работает хорошо, но когда я проверяю папку etc, я не вижу существенной разницы.

Рейтинг:1
флаг in

Основываясь на ваших журналах, я вижу, что и Varnish, и Apache работают на одной машине. Varnish должен работать на порту 80 и Apache на порту 8080.

По-видимому, также работает Nginx, поэтому я предполагаю, что это для завершения TLS, работающего на порту 443.

Шаг 1: убедитесь, что Apache успешно прослушивает порт 8080

Бег судо netstat -plnt чтобы выяснить, какие порты используются каждой службой.

Убедитесь, что httpd сервис прослушивает порт 8080 и проверьте это, запустив curl -I локальный хост: 8080.

Шаг 2: добавьте проверку работоспособности серверной части в файл VCL.

Стандартный VCL не предлагает проверку работоспособности вашего бэкенда по умолчанию. Используя приведенный ниже код VCL, вы можете постоянно отслеживать работоспособность серверной части:

серверная часть по умолчанию {
    .хост = "127.0.0.1";
    .порт = "8080";
    .зонд = {
        .url = "/";
        .таймаут = 2с;
        .интервал = 5с;
        .окно = 10;
        .порог = 5;
   }
}

После добавления зонда и загрузки нового VCL вы можете вызвать следующую команду, чтобы проверить работоспособность серверной части на основе зонда:

лаклог -g сырой -i backend_health

Если вывод содержит Все еще болен, вы знаете, что серверная часть недоступна, и код состояния может сказать вам, почему это так.

Шаг 3: обновите сервер Varnish

Я не мог не заметить такие термины, как RxЗаголовок в вашем выводе VSL. Это явный намек на то, что вы используете старую версию Varnish, которая больше не поддерживается.

Даже в очень старых версиях Varnish RxЗаголовок был заменен на Заголовок запроса.

Мой совет: обновите до Лак 6.0 л. Эта LTS-версия Varnish поставляется с частыми исправлениями ошибок и исправлениями безопасности. Видеть https://www.varnish-software.com/developers/tutorials/installing-varnish-centos/ чтобы узнать, как установить эту версию на CentOS.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.