Как устранить сбой установления связи SSL в Nginx?

Я пытаюсь настроить HTTPS для nginx в Ubuntu 16.04. Я уже настроил его с помощью listen 443 ssl операторов и сказал ему, где найти файлы сертификата и закрытого ключа. После этого я перезапустил сервер с помощью sudo service nginx restart .

Теперь, когда я заворачиваю https: // my_ip_address , я получаю следующее сообщение:

curl: (35) gnutls_handshake() failed: Handshake failed

Я проверил два известных мне файла журнала, / var / log / nginx / access.log и /var/log/nginx/error.log ; но он не показывает никаких следов запроса.

Мой вопрос: записывается ли что-нибудь в журнал, когда квитирование SSL не удается? Если да, то где? В общем, как мне решать подобные проблемы, когда в протоколе SSL возникает ошибка до того, как HTTP-запрос будет отправлен или извлечен сервером?

РЕДАКТИРОВАТЬ: Я заставил его работать, удалив следующие строки из моя конфигурация:

ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
ssl_ciphers "EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH";
ssl_ecdh_curve secp384r1;
ssl_session_cache shared:SSL:10m;
ssl_session_tickets off;
ssl_stapling on;
ssl_stapling_verify on;
resolver 8.8.8.8 8.8.4.4 valid=300s;
resolver_timeout 5s;

Обновление: строка ssl_ecdh_curve secp384r1; , похоже, вызывала проблему. Без него все работает нормально, но с ним не удается установить связь SSL. Любопытно, что сообщение об ошибке: " Мне было трудно найти ответ на этот вопрос, поэтому я подумал, что задам его вместо этого.

Я создаю небольшой скрипт CMS с PHP и хочу украсить свои URL. У меня нет проблем с отправкой запросов корневого уровня на мой index.php в виде переменных; например, с example.com/index.php?p=about-us до example.com/about-us . Однако, не удаляя эту возможность, я хочу перенаправить запрос типа example.com/blog/a-post на example.com/blog.php?b=a-post . Как я могу добиться этого, чтобы это не потребовалось при перезаписи исходного индекса?

Я прошу прощения, если терминология, которую я использовал для описания моей проблемы, не совсем верна, прошло некоторое время с тех пор, как я занимался программированием, и я чувствую себя ржавым, как ад!

- Изменить -

Код, который у меня сейчас есть, приведен ниже:

RewriteEngine On

RewriteCond %{THE_REQUEST} \s/+index\.php\?([^\s&]+) [NC]
RewriteRule ^ %1? [R=301,L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]+)/?$ index.php?p=$1 [L,QSA]

Я хочу, чтобы у пользователя был доступ к URL-адресу

url.com/blog/a-post

Но я хочу, чтобы он действительно имел доступ к

url.com/blog.php?b=a-post
0
задан 21 September 2016 в 20:20
1 ответ
RewriteEngine On
RewriteRule ^work(.*)/([^/]*) work-single.php$1?slug=$2 [QSA]

работа - это псевдокаталог, а файл work-single.php - это файл, получающий запрос переменной

.
0
ответ дан 5 December 2019 в 09:29

Теги

Похожие вопросы