chelkaz
@chelkaz

У кого работает Let's Encrypt SSL в Safari с Nginx/1.10.3 + Apache/2.4.25?

Уже месяц не могу выяснить причину...
В логах сервера ошибок не наблюдаю...
Много нахожу подобных проблем по запросу Let's Encrypt SSL apache 2.4 http2 safari но не нахожу ответа...
Сайт работает на всех браузерах, кроме IOS и MacOS Safari
Если просто открываю html файл, то все ок в сафари, как я понимаю, дело в Apache.
Вот что в Apache у меня:
<VirtualHost *:88>
  ServerAdmin admin@example.com
  DocumentRoot "/data/wwwroot/site.com/www/public"
  ServerName site.com
  ServerAlias www.site.com
  SSLEngine on
  SSLCertificateFile "/usr/local/nginx/conf/ssl/site.com.crt"
  SSLCertificateKeyFile "/usr/local/nginx/conf/ssl/site.com.key"
  ErrorLog "/data/wwwlogs/site.com_error_apache.log"
  CustomLog "/dev/null" common
  # CustomLog /data/wwwroot/site.com/www/public/httpd.log common
<Directory "/data/wwwroot/site.com/www/public">
  SetOutputFilter DEFLATE
  Options FollowSymLinks ExecCGI
  Require all granted
  AllowOverride All
  Order allow,deny
  Allow from all
  DirectoryIndex index.html index.php
</Directory>
</VirtualHost>


Вот Nginx:
server {
  listen 80;
  listen 443 ssl http2;
  ssl_certificate /usr/local/nginx/conf/ssl/site.com.crt;
  ssl_certificate_key /usr/local/nginx/conf/ssl/site.com.key;
  ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
  ssl_ciphers EECDH+CHACHA20:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;
  ssl_prefer_server_ciphers on;
  ssl_session_timeout 10m;
  ssl_session_cache builtin:1000 shared:SSL:10m;
  ssl_buffer_size 1400;
  add_header Strict-Transport-Security max-age=15768000;
  ssl_stapling on;
  ssl_stapling_verify on;
  server_name site.com www.site.com;
  access_log off;
  index index.html index.htm index.php;
  root /data/wwwroot/site.com/www/public;
  if ($ssl_protocol = "") { return 301 https://$server_name$request_uri; }
  if ($host != site.com) {  return 301 $scheme://site.com$request_uri;  }
  
  location / {
    try_files $uri @apache;
  }
  location @apache {
    proxy_pass http://127.0.0.1:88;
    include proxy.conf;
  }
  location ~ .*\.(php|php5|cgi|pl)?$ {
    proxy_pass http://127.0.0.1:88;
    include proxy.conf;
  }
  location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|flv|mp4|ico)$ {
    expires 30d;
    access_log off;
  }
  location ~ .*\.(js|css)?$ {
    expires 7d;
    access_log off;
  }
  location ~ /\.ht {
    deny all;
  }
}
  • Вопрос задан
  • 1074 просмотра
Решения вопроса 1
chelkaz
@chelkaz Автор вопроса
Я нашел причину. Дело все в настройке Apache Protocols h2 http/1.1, как я понял этот параметр не нужен для https протокола. Закомментировав его, все заработало. Эту проблему часто обсуждают за бугром, так как там у многих ios и Safari на macbook. Но у нас про эту проблему я не нашел...
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
opium
@opium
Просто люблю качественно работать
А причем тут апач то, вы терминируете ссл в нгинксе
Какую ошибку то сафари показывает?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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