Я пытаюсь заставить свой SSL работать на apache2 с Joomla. Однако я столкнулся с проблемой превышения времени ожидания подключения. Я провел множество исследований и почти уверен, что мой код верен. Мой файл ports.conf настроен для прослушивания 443:
<IfModule mod_ssl.c>
# If you add NameVirtualHost *:443 here, you will also have to change
# the VirtualHost statement in /etc/apache2/sites-available/default-ssl
# to <VirtualHost *:443>
# Server Name Indication for SSL named virtual hosts is currently not
# supported by MSIE on Windows XP.
NameVirtualHost *:443
Listen 443
</IfModule>
Я также отредактировал свой файл «по умолчанию» в / etc / apache2 / sites-available
<VirtualHost *:443>
DocumentRoot /var/www
SSLEngine on
SSLOptions +StrictRequire
<Directory />
SSLRequireSSL
</Directory>
SSLProtocol -all +TLSv1 +SSLv3
SSLCipherSuite HIGH:MEDIUM:!aNULL:+SHA1:+MD5:+HIGH:+MEDIUM
SSLSessionCacheTimeout 600
SSLCertificateFile /root/server.crt
SSLCertificateKeyFile /root/server.key
SSLVerifyClient none
SSLProxyEngine off
<IfModule mime.c>
AddType application/x-x509-ca-cert .crt
AddType application/x-pkcs7-crl .crl
</IfModule>
</VirtualHost>
и мой «default-SSL» "там же:
<IfModule mod_ssl.c>
<VirtualHost *:443>
ServerAdmin webmaster@localhost
DocumentRoot /var/www
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/ssl_access.log combined
Alias /doc/ "/usr/share/doc/"
<Directory "/usr/share/doc/">
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>
#SSL Engine switch
#Enable SSL engine for this virtual host
SSLEngine on
# A self-signed (snakeoil) certificate can be created by installing
# the ssl-cert package. See
# /usr/share/doc/apache2.2-common/README.Debian.gz for more info.
# If both key and certificate are stored in the same file, only the
# SSLCertificateFile directive is needed.
SSLCertificateFile /root/server.crt
SSLCertificateKeyFile /root/server.key
И так далее, и тому подобное.
Моя проблема в следующем: я все тестирую на локальном сервере. Когда я вхожу в DNS, например https://mydomainname.com/
, я получаю ошибку тайм-аута подключения. Однако, если я вместо этого введу что-то вроде: https: // mylocalip: 443
, он работает, но я получаю предупреждение о недопустимом сертификате (чего и следовало ожидать, потому что я использую самозаверяющий сертификат для тестирования целей). Почему я не могу получить доступ к своему ssl с именем, но могу полностью использовать IP-адрес?
Проблема решена. После проверки связи с сервером я понял, что он выходит за пределы моего домена для доступа к сайту. Я переадресовал, и все работает нормально.