diff --git a/modules/openstack_project/templates/logs-dev.vhost.erb b/modules/openstack_project/templates/logs-dev.vhost.erb index 0b5827b1a4..a6df51cc0d 100644 --- a/modules/openstack_project/templates/logs-dev.vhost.erb +++ b/modules/openstack_project/templates/logs-dev.vhost.erb @@ -59,8 +59,12 @@ NameVirtualHost <%= vhost_name %>:<%= port %> RewriteEngine On # rewrite all txt.gz & html.gz files to map to our internal htmlify wsgi app - RewriteRule ^/(.*\.txt\.gz)$ /htmlify/$1 [QSA,L,PT] - RewriteRule ^/(.*console\.html(\.gz)?)$ /htmlify/$1 [QSA,L,PT] + # PT, Pass-through: to come back around and get picked up by the WSGIScriptAlias + # NS, No-subrequest: on coming back through, mod-autoindex may have added index.html + # which would match the !-f condition. We therefore ensure the + # rewrite doesn't trigger by disallowing subrequests. + RewriteRule ^/(.*\.txt\.gz)$ /htmlify/$1 [QSA,L,PT,NS] + RewriteRule ^/(.*console\.html(\.gz)?)$ /htmlify/$1 [QSA,L,PT,NS] # Check if the request exists as a file, directory or symbolic link # If not, write the request to htmlify to see if we can fetch from swift @@ -68,7 +72,7 @@ NameVirtualHost <%= vhost_name %>:<%= port %> RewriteCond %{DOCUMENT_ROOT}%{REQUEST_FILENAME} !-d RewriteCond %{DOCUMENT_ROOT}%{REQUEST_FILENAME} !-l RewriteCond %{REQUEST_FILENAME} !^/icon - RewriteRule ^/(.*)$ /htmlify/$1 [QSA,L] + RewriteRule ^/(.*)$ /htmlify/$1 [QSA,L,PT,NS] WSGIScriptAlias /htmlify /usr/local/lib/python2.7/dist-packages/os_loganalyze/wsgi.py diff --git a/modules/openstack_project/templates/logs.vhost.erb b/modules/openstack_project/templates/logs.vhost.erb index 0b5827b1a4..a6df51cc0d 100644 --- a/modules/openstack_project/templates/logs.vhost.erb +++ b/modules/openstack_project/templates/logs.vhost.erb @@ -59,8 +59,12 @@ NameVirtualHost <%= vhost_name %>:<%= port %> RewriteEngine On # rewrite all txt.gz & html.gz files to map to our internal htmlify wsgi app - RewriteRule ^/(.*\.txt\.gz)$ /htmlify/$1 [QSA,L,PT] - RewriteRule ^/(.*console\.html(\.gz)?)$ /htmlify/$1 [QSA,L,PT] + # PT, Pass-through: to come back around and get picked up by the WSGIScriptAlias + # NS, No-subrequest: on coming back through, mod-autoindex may have added index.html + # which would match the !-f condition. We therefore ensure the + # rewrite doesn't trigger by disallowing subrequests. + RewriteRule ^/(.*\.txt\.gz)$ /htmlify/$1 [QSA,L,PT,NS] + RewriteRule ^/(.*console\.html(\.gz)?)$ /htmlify/$1 [QSA,L,PT,NS] # Check if the request exists as a file, directory or symbolic link # If not, write the request to htmlify to see if we can fetch from swift @@ -68,7 +72,7 @@ NameVirtualHost <%= vhost_name %>:<%= port %> RewriteCond %{DOCUMENT_ROOT}%{REQUEST_FILENAME} !-d RewriteCond %{DOCUMENT_ROOT}%{REQUEST_FILENAME} !-l RewriteCond %{REQUEST_FILENAME} !^/icon - RewriteRule ^/(.*)$ /htmlify/$1 [QSA,L] + RewriteRule ^/(.*)$ /htmlify/$1 [QSA,L,PT,NS] WSGIScriptAlias /htmlify /usr/local/lib/python2.7/dist-packages/os_loganalyze/wsgi.py