Compré un certificado Comodo SSL (OV) y configuré la configuración de Apache vhost para que todo el tráfico se reenvíe a 443. De manera intermitente, se solicita a algunos usuarios que proporcionen un certificado de cliente; todos estos usuarios parecen ser usuarios de OSX, pero sucede tanto en Safari como en Chrome. ¿Por qué pasó esto? ¿Por qué solo es OSX y cómo puedo evitar que esto suceda?
Agregué la línea SSLVerifyClient
como se muestra como un experimento después de que esto empezara a suceder (el valor predeterminado es ninguno, pero quería intentar ser explícito).
Mi configuración de vhost sigue al final de la publicación.
Estas son algunas de las capturas de pantalla de los usuarios (que, por cierto, es realmente una mala experiencia de usuario; me sorprende que esto se vea en absoluto en OSX):
Aquíestámiconfiguraciónvhost:
<VirtualHost*:80>ServerNamewww.example.comRedirectpermanent/https://www.example.com/</VirtualHost><VirtualHost*:443>HeaderaddStrict-Transport-Security"max-age=15768000"
ServerAdmin [email protected]
ServerName www.example.com
ServerAlias example.com
SetEnv APPLICATION_ENV production
SSLEngine on
SSLCertificateFile /etc/apache2/ssl/example_com.crt
SSLCertificateKeyFile /etc/apache2/ssl/example.key
SSLCertificateChainFile /etc/apache2/ssl/example_com.ca-bundle
SSLVerifyClient none
BrowserMatch "MSIE [2-6]" \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0
# MSIE 7 and newer should be able to use keepalive
BrowserMatch "MSIE [17-9]" ssl-unclean-shutdown
AddHandler php5-fcgi .php
Action php5-fcgi /php5-fcgi
Alias /php5-fcgi /usr/lib/cgi-bin/php5-fcgi
FastCgiExternalServer /usr/lib/cgi-bin/php5-fcgi -socket /var/run/php5-fpm.sock -pass-header Authorization
<FilesMatch "\.(cgi|shtml|phtml|php)$">
SSLOptions +StdEnvVars
</FilesMatch>
<Directory /usr/lib/cgi-bin>
SSLOptions +StdEnvVars
</Directory>
DocumentRoot /usr/local/zend/example/public
<Directory /usr/local/zend/example/public>
Options Indexes FollowSymLinks
AllowOverride All
allow from all
php_admin_value open_basedir none
</Directory>
</VirtualHost>
Hay un .htaccess
en el public
dir:
RewriteEngine On
RewriteRule ^(.*)\.[\d]{10}\.(css|js)$ $1.$2 [L]
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]