Назад | Перейти на главную страницу

Internet Explorer не может отображать страницу, другие браузеры могут, возможно, ошибка htaccess / сервера

После переноса сайта с высоким трафиком с Redhat на Suse у пользователей Internet Explorer (как минимум IE 9) в некоторых случаях возникают проблемы с просмотром главной страницы (сообщение об ошибке: «Internet Explorer не может отобразить страницу», которая указывает на ошибка сервера 500). В большинстве случаев Internet Explorer отображает страницу правильно, как и все другие браузеры. Я проверил это примерно на 10 разных компьютерах с разными версиями IE и разными ОС. Browserstack также правильно отображает сайт для всех версий IE. Пока что мне самому воспроизвести ошибку не удалось. На старом сервере этой проблемы не было.

Согласно apache access.log, ошибка, вероятно, связана с перенаправлением, указанным в файле .htaccess. Журнал доступа дает статус 302 в случае ошибки, после этого ничего (для конкретного IP-адреса). Журнал ошибок пуст. См. Полный файл .htaccess ниже.

SSL был установлен для этого сайта и работает хорошо, без каких-либо известных ошибок. Странная деталь: если пользователь, получивший ошибку, нажимает F5, сайт загружается без проблем даже после перезагрузки или перезапуска браузера. Это указывает на проблему с кешированием, но пока мне не удалось найти причину.

SetEnv APPLICATION_ENV production

Options All -Indexes
Options +FollowSymLinks

RewriteEngine On

RewriteCond %{SERVER_PORT} !^443$               [OR]
RewriteCond %{HTTP_HOST} !www\.domain\.nl     [NC]
RewriteRule ^(.*)$ https://www.domain.nl/$1   [R,L]

RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d

RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]

<Files .htaccess>
    order allow,deny
    deny from all
</Files>

Некоторые другие подробности:

Apache / 2.2.12 (Linux / SUSE) PHP версии 5.3.17 Zend Engine v2.3.0 mod_ssl / 2.2.12

Кто может помочь? Приносим извинения за то, что проблема не очень хорошо определена, но боюсь, что это связано с самой проблемой.

заранее спасибо

Я испытал точно такое же поведение, но без SSL. Мне не удалось определить источник проблемы (кроме того, что IE несовместим с базовым протоколом HTTP), но этот код в htaccess устранил проблему:

BrowserMatch "MSIE [2-8]" nokeepalive downgrade-1.0 force-response-1.0

Если это не поможет, проверьте это %{HTTP_HOST} на самом деле содержит то, что вы ожидаете от IE, потому что очевидно, HTTP_HOST может быть пустым.