7d01073884
This commit uses the pattern established in [1] to remove the venv activation code by using the correct venv Python interpreter instead. Note that using python-path in openstack_dashboard.conf.j2 does not achieve full isolation from the host's python installation as we'd hope (the path will still include /usr/local/lib/python2.7/dist-packages and /usr/lib/python2.7/dist-packages), but every attempt at using python-home failed due to the venv interpreter not being able to find argparse. We will need to spend some additional cycles here trying to solve this as locking the venv interpreter into its own site-packages is the best solution long-term. [1] https://review.openstack.org/#/c/273943/ Change-Id: I0fbb8b9b070d1a0ab5cd55abfcc6587a0cd8957d
57 lines
1.9 KiB
Django/Jinja
57 lines
1.9 KiB
Django/Jinja
# {{ ansible_managed }}
|
|
|
|
{% set _wsgi_threads = ansible_processor_vcpus | default(2) // 2 %}
|
|
{% set wsgi_threads = _wsgi_threads if _wsgi_threads > 0 else 1 %}
|
|
|
|
<VirtualHost *:80>
|
|
ServerName {{ horizon_server_name }}
|
|
RewriteEngine On
|
|
RewriteCond %{HTTPS} !=on
|
|
RewriteRule ^/?(.*) https://%{HTTP_HOST}/$1 [R,L]
|
|
</VirtualHost>
|
|
|
|
<VirtualHost *:443>
|
|
ServerName {{ horizon_server_name }}
|
|
|
|
LogLevel {{ horizon_log_level }}
|
|
ErrorLog /var/log/horizon/horizon-error.log
|
|
CustomLog /var/log/horizon/ssl_access.log combined
|
|
Options +FollowSymLinks
|
|
|
|
SSLEngine on
|
|
SSLCertificateFile {{ horizon_ssl_cert }}
|
|
SSLCertificateKeyFile {{ horizon_ssl_key }}
|
|
{% if horizon_user_ssl_ca_cert is defined -%}
|
|
SSLCACertificateFile {{ horizon_ssl_ca_cert }}
|
|
{% endif -%}
|
|
SSLCompression Off
|
|
SSLProtocol All -SSLv2 -SSLv3
|
|
SSLHonorCipherOrder On
|
|
SSLCipherSuite {{ horizon_ssl_cipher_suite }}
|
|
SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown
|
|
|
|
WSGIScriptAlias / {{ horizon_lib_wsgi_file }}
|
|
WSGIDaemonProcess horizon user={{ horizon_system_user_name }} group={{ horizon_system_group_name }} processes={{ horizon_wsgi_processes | default(wsgi_threads) }} threads={{ horizon_wsgi_threads | default(wsgi_threads) }} {% if horizon_venv_enabled | bool %}python-path={{ horizon_venv_bin | dirname }}/lib/python2.7/site-packages{% endif %}
|
|
|
|
WSGIProcessGroup horizon
|
|
WSGIApplicationGroup horizon
|
|
|
|
<Directory {{ horizon_lib_wsgi_file | dirname }}>
|
|
<Files django.wsgi>
|
|
Order allow,deny
|
|
allow from all
|
|
Require all granted
|
|
</Files>
|
|
</Directory>
|
|
|
|
Alias /static {{ horizon_lib_dir }}/static/
|
|
|
|
<Directory {{ horizon_lib_dir }}/static/>
|
|
Options -FollowSymlinks
|
|
AllowOverride None
|
|
Order allow,deny
|
|
allow from all
|
|
Require all granted
|
|
</Directory>
|
|
</VirtualHost>
|