Я понимаю, что это похоже на дубликат хотя бы нескольких других вопросов, но я прочитал их несколько раз и все еще делаю что-то не так.
Ниже приведено содержимое моего конфигурационного файла myginample.com nginx, расположенного в /etc/nginx/sites-available
.
server {
listen 443 ssl;
listen [::]:443 ssl;
server_name myexample.com www.myexample.com;
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains";
ssl_certificate /etc/letsencrypt/live/myexample.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/myexample.com/privkey.pem;
#Configures the publicly served root directory
#Configures the index file to be served
root /var/www/myexample.com;
index index.html index.htm;
}
Это работает, когда я захожу на https://myexample.com, контент обслуживается и соединение защищено. Так что этот конфиг кажется хорошим.
Теперь, если я изменяю порт ssl на 9443 и перезагружаю конфигурацию nginx, конфигурация перезагружается без ошибок, но посещение https://myexample.com показывает ошибку в браузере (Этот сайт недоступен / myexample.com отказался подключиться. ERR_CONNECTION_REFUSED)
Я пробовал предложения и документацию здесь , здесь и здесь (среди прочего), но всегда получаю ошибку ERR_CONNECTION_REFUSED.
Я должен отметить, что я могу использовать нестандартный порт и затем явно ввести этот порт в URL, например, https://myexample.com:9443 . Но я не хочу этого делать. Я хочу, чтобы пользователь мог набирать myexample.com в любом браузере и автоматически перенаправлять nginx на защищенное соединение.
Опять же, у меня нет никаких проблем, когда я использую стандартный порт 443 SSL.
Изменить: я использую nginx / 1.6.2 на Debian / Джесси