我有一个静态内容的网站,所有运行在apache上的人都可以访问。作为补充,有一个运行在django上的会员网站。我没有任何问题“共享”我的.css,并使双方在外观上相同,但我似乎不太能理解的是让我的django网站有django密码保护(还有额外的警告,所有的会员材料,从登录开始,通过443)。
我可以服务所有的页面,我尝试使用mod_rewrite如下:
<Directory /Library/Webserver/Documents>
.
.
.
</Directory>
WSGIScriptAlias /members /usr/local/django/mysite/apache/django.wsgi
<Directory /members>
RewriteCond %{HTTPS} off
RewriteRule (.*) https://{HTTP_HOST}%{REQUEST_URI} [L]
.
.
</Directory>我已经在上面的'/members位置尝试了上千个不同项目中的每一个,似乎都没有命中(是的,包括RewriteEngine On -我可以看到调试出来)。
发布于 2009-12-11 05:07:41
尝试:
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}您应该重定向回请求所针对的同一主机,而不一定是实际的web服务器主机。
我也不相信mod_rewrite中有%{URI}变量。应使用%{REQUEST_URI}。
编辑1
根据评论,应该是:
<Location /members>
RewriteCond %{HTTPS} off
RewriteRule (.*) https://{HTTP_HOST}%{REQUEST_URI} [L]
.
.
</Location>或者:
<Directory /usr/local/django/mysite/apache>
RewriteCond %{HTTPS} off
RewriteRule (.*) https://{HTTP_HOST}%{REQUEST_URI} [L]
.
.
</Directory>因此,Location用于URL,而directory用于文件系统目录。
https://stackoverflow.com/questions/1880748
复制相似问题