Фото Simon Fitall на Unsplash
Если вы обратите внимание на Google и это правила индексации Вы, вероятно, слышали, что вам нужен сертификат SSL на вашем сайте. Я знал это некоторое время, и мой личный сайт на Petetasker.com не был приоритетной ситуацией.
WELP, мне было надоело однажды ночью и решила, что это было о времени, чтобы получить один из этих модных брюк Давайте шифровать Сертирование установлено на моем старом сервере Linode.
В интернете есть тонны ресурсов, которые описывают, как получить сертификат SSL на вашем сайте, поэтому я не собираюсь пройти эту часть. То, что я пойду, — это то, как слепо следовать за ними, может снять свой сервер …
Вы видите, большинство учебных пособий хотят, чтобы вы использовали Certbot Чтобы установить свой сертификат и настроить Nginx.
certbot —nginx -d petetasker.com
Кажется безвреден, нет? Что мало --nginx
Флаг, если вы не прочитали тонкую печать, измените свой виртуальный хост-конфигурацию. Ага. При настройке сертификата на создание сертификата на перенаправьте все HTTP-трафик в HTTPS и, очевидно, я сказал «конечно».
И очередь перенаправить петлю. Монитор сайта Email Seturege, Twitter ‘Сайт входит в dm’s …
Все идет сложнее!
Мне удалось решить эту проблему, удалив следующий блок в /etc/nginx/sites-available/petetasker.com
Виртуальная декларация хоста:
if ($host = petetasker.com) { return 301 https://$host$request_uri; } # managed by Certbot
И добавление проще перенаправленного блока, просто чтобы быть Reallllly Очистить, в верхней части файла:
server{ listen 80; server_name petetasker.com; return 301 https://$server_name$request_uri; }
Так какой урок здесь дети? Урок заключается в том, что если вы используете инструмент, который «автоматически» сделает что-то для вас, и звучит слишком хорошо, чтобы быть правдой, это, вероятно, есть.
Если вам интересно, как выглядит окончательный виртуальный хост-блок:
server{ listen 80; server_name petetasker.com; return 301 https://$server_name$request_uri; } server { listen 80 default_server; #listen [::]:80 default_server ipv6only=on; server_name petetasker.com www.petetasker.com; server_name petetasker.com www.petetasker.com; root /usr/share/nginx/sites/petetasker.com; index index.php index.html; location / { try_files $uri $uri/ /index.php?$args; } location ~ \.php$ { try_files $uri =404; fastcgi_pass unix:/var/run/php/php7.0-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } listen [::]:443 ssl ipv6only=on; # managed by Certbot listen 443 ssl; # managed by Certbot ssl_certificate /etc/letsencrypt/live/petetasker.com-0001/fullchain.pem; # managed by Certbot ssl_certificate_key /etc/letsencrypt/live/petetasker.com-0001/privkey.pem; # managed by Certbot include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot }
Пост Nginx, давайте шифровать и принимать свой собственный сервер 😢 появился первым на 🔥 База данных Критическая 🔥 Отказ
Оригинал: «https://dev.to/ptasker/nginx-lets-encrypt-and-taking-my-own-server-down—34a2»