Aqui estão suas configurações; reformatado meu eu para legibilidade:
<VirtualHost 52.79.**.**:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/qna
Alias /m/ /var/www/qna/static/
Alias /upfiles/ /var/www/qna/askbot/upfiles/
<DirectoryMatch “/var/www/qna/askbot/skins/([^/]+)/media”>
Require all granted
</DirectoryMatch>
<Directory “/var/www/qna/askbot/upfiles”>
Require all granted
</Directory>
WSGIDaemonProcess qna
WSGIProcessGroup qna
WSGIScriptAlias / /var/www/qna/django.wsgi
<LocationMatch “(?!/m)/admin(?!/media)”>
RewriteEngine on
RewriteRule /admin(.*)$ https://mywebsite.com/admin$1 [L,R=301]
</LocationMatch>
CustomLog /var/log/apache2/t_access_log common
ErrorLog /var/log/apache2/qna_error_log
LogLevel debug
</VirtualHost>
<VirtualHost 52.79.**.**:443>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/qna
<LocationMatch "^(?!/admin)">
RewriteEngine on
RewriteRule django.wsgi(.*)$ http://mywebsite.com$1 [L,R=301]
</LocationMatch>
SSLEngine on
SSLCertificateFile /etc/ssl/private/qna.crt
SSLCertificateKeyFile /etc/ssl/private/qna.key
Alias /admin/media/ /usr/local/lib/python2.7/dist-packages/django/contrib/admin/static/media/
Alias /m/ /var/www/qna/static/
WSGIScriptAlias / /var/www/qna/django.wsgi
CustomLog /var/log/apache2/qna_access_log common
ErrorLog /var/log/apache2/qna_error_log
</VirtualHost>
Estou assumindo que, se você tiver uma configuração de host virtual, se tentar acessar o site por meio do endereço IP 52.79.**.**:80
, tudo estará bem, mas se você estiver acessando-a por meio de um nome de host / domínio como example.com
então é asfixia, correto? Se for esse o caso, o que você precisa fazer é definir as linhas do host virtual da seguinte forma:
<VirtualHost *:80>
E isso para HTTPS:
<VirtualHost *:443>
Então dentro desses blocos de configuração, você deve definir um valor ServerName
como este; claro que isso não é uma configuração completa, mas apenas um exemplo do que você deve mudar:
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/qna
ServerName www.example.com
ServerAlias www example.* www.example.*
Fazer algo assim permitiria que a configuração do host virtual funcionasse corretamente com www.example.com
sendo o nome real do servidor conectado a essa configuração e, em seguida, ServerAlias
permite que a configuração capture outras variantes de www.example.com
, como example.com
ou www.example.net
.