Apache:当网站在 HTTPS 上运行时通过 HTTP 提供资源
我们的网站在 HTTPS 上运行。有没有办法接受包含 /public/
的 URL 的 HTTP 请求?对于所有其他 HTTP 请求,应将它们重定向到 HTTPS。
我有在 apache
+ passenger
上运行的 RoR
应用程序。
编辑
由于资产(/public/)
请求将显式位于HTTP
上,因此如何创建另一个VHOST
来处理 HTTP
请求。对于除 /public/
之外的任何请求,都可以直接重定向到 HTTPS
吗?如果我们可以这样做,我们如何在 VHOST
中针对 HTTP
进行设置?
编辑2
抱歉,我应该首先详细说明这一点。这是我们的设置。有两个单独的应用程序。一个在 HTTPS (S
) 上运行,另一个在 HTTP (P
) 上运行。应用程序P
从S
获取数据(一个完整的HTML页面,称之为页面
)并呈现给客户端。 page
中使用的 CSS 文件位于“S”上,因此我需要在 CSS 链接中使用 HTTPS。我想使用 HTTP 来引用 CSS。
We have our site running on HTTPS. Is there a way to accept HTTP request for URLs containing /public/
? For all other HTTP requests they should be redirected to HTTPS.
I have RoR
application running on apache
+ passenger
.
EDIT
Since the assets (/public/)
requests will explicitly be on HTTP
, how about creating another VHOST
to handle HTTP
requests. And for any requests other than /public/
directly could be redirected to HTTPS
? If we can go this way how can we set this up in VHOST
for HTTP
?
EDIT 2
I am sorry, I should have been elaborated this in first place. Here is our setup. There two separate applications. One is running on HTTPS (S
) and other on HTTP (P
). The app P
fetches data (a full HTML page, call it page
) from S
and render to client. The CSS file used in page
is located on 'S' so I need to HTTPS in CSS link. I want to use HTTP instead to refer the CSS.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您可以使用
mod_rewrite
并放置 <DocumentRoot
中包含以下内容的 code>.htaccess 文件。You can use
mod_rewrite
and place a.htaccess
file with the below contents in yourDocumentRoot
.