Nginx не будет слушать 443, даже когда netstat говорит, что это делает
Я установил SSL на сервере, все прошло хорошо, как раньше на других серверах, но это просто не работает, я проверяю с помощью sudo netstat -t -l -p -n и получаю следующее:
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1062/sshd
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 2560/exim
tcp 0 0 0.0.0.0:443 0.0.0.0:* LISTEN 3129/nginx
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 3129/nginx
Но когда я пытаюсь получить доступ к веб-сайту, время ожидания истекает, и теперь, если я проверю по https://www.yougetsignal.com/tools/open-ports/ для порта 443, он скажет, что порт закрыт. Nginx -t не возвращает ошибок.
sudo iptables -L показывает:
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Статус sudo ufw показывает:
Status: inactive
Мой файл default.vhost:
server {
listen 80 default_server;
# listen [::]:80 default_server;
server_name _;
root /jet/app/www/website/public;
index index.php index.html index.htm;
autoindex on;
# Load configuration files for the default server block.
include /jet/etc/nginx/conf.d/*.inc;
#location / {
try_files $uri $uri/ /index.php;
# }
location ~ \.php$ {
#try_files $uri /index.php =404;
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
server {
listen 443 default_server;
ssl on;
ssl_certificate /jet/etc/nginx/SSL/website.crt;
ssl_certificate_key /jet/etc/nginx/SSL/private/website.key;
server_name _;
root /jet/app/www/website/public;
index index.php index.html index.htm;
autoindex on;
# Load configuration files for the default server block.
include /jet/etc/nginx/conf.d/*.inc;
#location / {
try_files $uri $uri/ /index.php;
# }
location ~ \.php$ {
#try_files $uri /index.php =404;
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
Что может происходить?
1 ответ
Перейдите на панель инструментов EC2 и нажмите "Группы безопасности". Выберите группу безопасности, соответствующую вашему экземпляру, и добавьте ниже строку
HTTP tcp 443 443 0.0.0.0/0
Источник: Настройка Apache в Amazon AWS