Руководство по устранению неполадок веб-сервисов
ServBay поддерживает использование Caddy, NGINX и Apache в качестве дефолтного веб-сервера. В процессе использования пользователи могут сталкиваться с проблемами, такими как невозможность открыть веб-сайт. Ниже приведены решения для некоторых распространенных проблем.
Использование встроенных инструментов ServBay для диагностики
ServBay включает в себя мощный инструмент для диагностики неполадок, и мы рекомендуем использовать инструмент устранения неполадок для самодиагностики и решения проблем.
Откройте приложение ServBay, найдите в левой навигации Диагностика неполадок
, чтобы получить доступ к инструменту диагностики.
Проверка конфигурационных файлов
Проверка Caddyfile
Используйте встроенную функцию проверки Caddy для проверки правильности Caddyfile. Выполните следующую команду:
$ /Applications/ServBay/bin/caddy validate -c /Applications/ServBay/etc/caddy/Caddyfile
Если вернется Valid configuration
, значит, все в порядке. Если появится другой код ошибки, следуйте указаниям в сообщении об ошибке. (Примечание: в выводе команды будет много сообщений INFO и WARN. Это нормально и не повлияет на работу сервиса.)
Ошибка сертификата
Если появляется ошибка loading certificates: open xxxxx: no such file or directory
, это означает, что файл сертификата не найден. Проверьте, правильный ли указан путь к файлу сертификата.
2024/12/09 17:24:16.970 INFO using config from file {"file": "/Applications/ServBay/etc/caddy/Caddyfile"}
2024/12/09 17:24:16.991 INFO adapted config to JSON {"adapter": "caddyfile"}
2024/12/09 17:24:16.991 WARN Caddyfile input is not formatted; run 'caddy fmt --overwrite' to fix inconsistencies {"adapter": "caddyfile", "file": "/Applications/ServBay/etc/caddy/Caddyfile", "line": 8}
2024/12/09 17:24:16.999 INFO tls.cache.maintenance started background certificate maintenance {"cache": "0x1400121f300"}
2024/12/09 17:24:17.006 INFO tls.cache.maintenance stopped background certificate maintenance {"cache": "0x1400121f300"}
Error: loading http app module: provision http: getting tls app: loading tls app module: provision tls: loading certificates: open /Applications/ServBay/ssl/private/tls-certs/mail.servbay.host/mail.servbay.host.1crt: no such file or directory
2
3
4
5
6
7
Ошибка в пути к веб-каталогу
Если возникает ошибка parsing caddyfile tokens for 'root': too many arguments
, проверьте, есть ли пробелы в пути веб-каталога. Это очень частая ошибка.
Например, root * /Applications/ServBay/www/public web
будет интерпретироваться как два параметра из-за пробела между public
и web
, что приводит к ошибке. Правильный способ установки - обернуть путь в двойные кавычки ("). Например, root * "/Applications/ServBay/www/public web"
.
Мы настоятельно рекомендуем избегать пробелов и специальных символов в именах файлов и путях. Для разделения слов можно использовать символы -
или _
, например: public-folder
, public_dir
.
2024/12/09 17:26:37.371 INFO using config from file {"file": "/Applications/ServBay/etc/caddy/Caddyfile"}
Error: adapting config using caddyfile: parsing caddyfile tokens for 'root': too many arguments; should only be a matcher and a path, at /Applications/ServBay/etc/caddy/Caddyfile:1388
2
3
Ошибка правил перезаписи
Использование неправильных правил перезаписи в Caddy, например, прямое использование правил NGINX, также может привести к ошибкам.
Проверка конфигурации NGINX
Используйте следующую команду, чтобы проверить правильность конфигурации NGINX:
$ /Applications/ServBay/bin/nginx -t
Если конфигурация верна, отобразится:
nginx: the configuration file /Applications/ServBay/etc/nginx/nginx.conf syntax is ok
nginx: configuration file /Applications/ServBay/etc/nginx/nginx.conf test is successful
2
Распространенные ошибки включают:
- Синтаксические ошибки (например, отсутствующие точки с запятой)
- Неправильные пути к файлам
- Конфликт портов
Проверка конфигурации Apache
Используйте следующую команду для проверки конфигурации Apache:
$ /Applications/ServBay/bin/apachectl configtest
Распространенные ошибки включают:
- Ошибки загрузки модулей
- Ошибки в синтаксисе файла .htaccess
- Неправильные настройки прав доступа к директориям
Обработка ошибки 500
Ошибка 500 (внутренняя ошибка сервера) является распространенной ошибкой веб-сервера и может возникать по разным причинам:
Общие шаги по устранению неполадок
Проверьте журналы ошибок сервера:
- Caddy:
/Applications/ServBay/var/logs/caddy/error.log
- NGINX:
/Applications/ServBay/var/logs/nginx/error.log
- Apache:
/Applications/ServBay/var/logs/apache/error.log
- Caddy:
Проверьте, запущен ли PHP-сервис:
bashps aux | grep php-fpm
1Проверьте ошибки PHP (если используете PHP):
/Applications/ServBay/var/logs/php/php_error.log
Проверьте права на файлы:
bash$ ls -la /Applications/ServBay/www/your-site
1Убедитесь, что у пользователя веб-сервера есть права на чтение.
Ошибки 500, специфичные для Caddy
- Проверьте правильность настройки FastCGI.
- Убедитесь, что сервис PHP-FPM запущен.
- Проверьте настройки обратного прокси.
Ошибки 500, специфичные для NGINX
- Проверьте правильность настройки
fastcgi_pass
. - Убедитесь, что
client_max_body_size
достаточно велик. - Проверьте настройки инструкции
try_files
.
Ошибки 500, специфичные для Apache
- Проверьте, активен ли
mod_rewrite
. - Проверьте содержимое файла
.htaccess
. - Проверьте настройки
AllowOverride
.
Управление сервисами
Перезапуск сервисов
Если вы изменили конфигурацию, необходимо перезапустить соответствующий сервис:
# Caddy
$ servbayctl restart caddy -all
# NGINX
$ servbayctl restart nginx -all
# Apache
$ servbayctl restart apache -all
2
3
4
5
6
7
8
Проверка состояния сервисов
# Caddy
$ servbayctl status caddy -all
# NGINX
$ servbayctl status nginx -all
# Apache
$ servbayctl status apache -all
2
3
4
5
6
7
8
Расширенная диагностика
Если вышеописанные методы не помогли, можно попробовать:
- Временно отключить файрвол для тестирования.
- Использовать
curl -v
для получения детальной информации о запросе. - Протестировать в разных браузерах/устройствах.
- Проверить правильность DNS-резолвации.
Если нужна дополнительная помощь, пожалуйста, свяжитесь с командой технической поддержки ServBay.