Итак, мой сайт защищен. За исключением того, что в одном каталоге (/ da) есть старое содержимое Flash (которое я не могу редактировать), которое просто отказывается работать по SSL. Итак, я собрал вместе несколько пользовательских решений StackOverflow (СПАСИБО!), Написал переписывание HTTP -> HTTPS, где я вырезал исключение для каталога / da, и получил, что все работает отлично.
Единственная проблема связана с мобильными браузерами, которые воспроизводят Flash-контент (например, Puffin и Photon). По какой-то причине им не нравится код перезаписи, и они продолжают открывать каталог / da в HTTPS ... поэтому содержимое Flash не работает.
Я думал, что могу просто исключить эти браузеры из переписывания, но я не могу заставить эту часть работать. Пожалуйста, смотрите ниже и дайте мне знать, что я делаю неправильно. Это линия «Puffin | BonEcho», которую я пытаюсь заставить работать. Я делаю это неправильно?
Или есть лучшее решение? Есть ли способ заставить Puffin и Photon соответствовать сценарию перезаписи HTTP / HTTPS?
Спасибо!
RewriteEngine On
RewriteCond $1 !\.(gif|jpe?g|png)$ [NC]
# Force HTTPS for anything which isn't /da
RewriteCond %{HTTPS} =on
RewriteCond %{THE_REQUEST} ^[A-Z]+\s/da [NC]
RewriteCond %{HTTP_USER_AGENT} !"Puffin|BonEcho" [NC,OR]
RewriteRule ^(da) http://%{HTTP_HOST}%{REQUEST_URI} [NC,R=301,L]
# Force HTTP for anything which is /da
RewriteCond %{HTTPS} !=on
RewriteCond %{THE_REQUEST} !^[A-Z]+\s/da [NC]
RewriteRule !^da https://%{HTTP_HOST}%{REQUEST_URI} [NC,R=301,L]
# Remove index.php from URLs
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php/$1