Я застрял на этом целую вечность и надеюсь, что кто-нибудь сможет дать совет.
Попытка установить новый сертификат SSL на сайт. На бегу nginx -t
я получаю следующую ошибку:
nginx: [emerg] BIO_new_file("/etc/nginx/ssl/mysite_com/mysite_com.crt") failed (SSL: error:0200100D:system library:fopen:Permission denied:fopen('/etc/nginx/ssl/mysite_com/mysite_com.crt','r') error:2006D002:BIO routines:BIO_new_file:system lib)
nginx: configuration file /etc/nginx/nginx.conf test failed
Теперь я установил владельца / группу в mysite_com.crt так же, как файлы, которые были в предыдущей конфигурации, которые успешно проходят тест nginx. Я также установил такие же разрешения. Даже временная установка разрешений для файлов на 777 для тестирования дала ту же ошибку. Я также попытался создать каталог / ssl / в корне раздела с 777 и все та же ошибка. Я назначил владельца http
который является пользователем веб-сервера на этой машине, и ничего.
Я в полном тупике. Какие-либо предложения?
Есть только одно предложение, у вас недостаточно прав для доступа к файлу /etc/nginx/ssl/mysite_com/mysite_com.crt
. Когда ты начнешь nginx -t
под вашей учетной записью nginx запустился с вашими разрешениями и не смог получить доступ к этим файлам. Есть два способа решить эту проблему, ничего не меняя. Первый - беги nginx -t
под учетной записью root или через sudo для проверки конфигурации, второй - запустить nginx -t
под учетной записью http, чтобы увидеть, как запускается nginx в реальной среде. Но если вы хотите внести изменения, вы можете добавить своего пользователя в группу http и попытаться запустить nginx -t
.