当前位置: 首页 > 知识库问答 >
问题:

Apache代理从HTTPS重定向到HTTP

彭洲
2023-03-14

下面是使用“ProxyPass”和“ProxyPassReverse”的apache反向代理配置片段

Listen 1.2.3.4:80
<VirtualHost 1.2.3.4:80>
  ProxyPreserveHost On
  SSLProxyEngine On
  ProxyPass /artifactory https://xxxx.xxxx.xxx/artifactory 
  ProxyPassReverse /artifactory https://xxxx.xxxx.xxx/artifactory 
Listen 1.2.3.4:443
<VirtualHost 1.2.3.4:443>
  SSLProxyEngine On
  ProxyPreserveHost On
  ProxyPass /artifactory https://xxxx.xxxx.xxx/artifactory
  ProxyPassReverse /artifactory https://xxxx.xxxx.xxx/artifactory
</VirtualHost>   

当我在wget命令下面运行时,它不知何故重定向到http:

#wget --no-check-certificate "https://xxxx.xxxx.xxx/artifactory/"
--2017-09-27 06:25:50--  
https://xxxx.xxxx.xxx/artifactory/
Resolving xxxx.xxxx.xxx... 1.2.3.4
Connecting to xxxx.xxxx.xxx|1.2.3.4|:443... connected.
WARNING: certificate common name “xxxx.xxxx.xxx” doesn't match requested 
host name “xxxx.xxxx.xxx”.
HTTP request sent, awaiting response... 302 Found
Location: http://xxxx.xxxx.xxx/artifactory/webapp/ [following]
--2017-09-27 06:25:51--  
http://xxxx.xxxx.xxx/artifactory/webapp/
Connecting to xxxx.xxxx.xxx|1.2.3.4|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 1449 (1.4K) [text/html]
Saving to: “index.html.18”

如果我使用“/artifactory/webapp/#/home”运行wget命令,它可以在HTTPS上工作:

wget --no-check-certificate "https://xxxx.xxxx.xxx/artifactory/webapp/#/home"
--2017-09-27 06:12:48-
https://xxxx.xxxx.xxx/artifactory/webapp/
Resolving xxxx.xxxx.xxx... 1.2.3.4
Connecting to xxxx.xxxx.xxx|1.2.3.4|:443... connected.
WARNING: certificate common name “xxxx.xxxx.xxx” doesn't 
match requested host name “xxxx.xxxx.xxx”.
HTTP request sent, awaiting response... 200 OK
Length: 1449 (1.4K) [text/html]
Saving to: “index.html.17”

2017-09-27 06:12:49 (73.1 MB/s) - “index.html.17” saved [1449/1449]

我没有在代理配置文件的任何地方定义重定向。

有人能提出这种行为背后的原因吗??如何避免将其重定向到HTTP?

共有1个答案

公瑞
2023-03-14

似乎您已经将反向代理配置为监听以'/ArtiFactory'结尾的url。考虑添加以下内容:

RewriteRule ^/$                     /artifactory/webapp/ [R,L]
RewriteRule ^/artifactory(/)?$      /artifactory/webapp/ [R,L]
RewriteRule ^/artifactory/webapp$   /artifactory/webapp/ [R,L]

另外,您使用的是Artifactory OSS还是Pro?如果是专业人士,您可以选择直接从ArtiFactory生成Apache配置代码段。

 类似资料:
  • 问题内容: __Apache 环境中心 尝试设置从http到https的自动重定向 我尝试将以下内容添加到我的httpd.conf中,但是没有用 有任何想法吗? 问题答案: 我实际上已经遵循了这个示例,并且对我有用:) 然后做:

  • 奇怪的问题。我使用FullCalendar向服务器上的endpoint发起ajax请求。终点是: 请注意,它是显式的HTTPS。但是,当我发起一个请求时(即当Fullcalendar发起一个请求时),我会得到一个301和一个到非HTTPSendpoint的重定向: 因为页面是通过HTTPS加载的,所以失败。 endpoint工作正常--当我将它加载到浏览器中时,我会得到预期的json输出(通过ht

  • RewriteCond%{SERVER\u PORT}上的RewriteEngine!443重写规则^(/(.*)?$https://%{HTTP_HOST}/$1[R=301,L] 这是我在. htaccess文件中使用的命令,当我键入arion-software.co.uk它不能正确重定向。任何想法?

  • 我的服务器正在从http重定向到HTTPS。我希望允许使用http和HTTPS访问我的应用程序。我怎么能这么做?在我的Wildfly8.2日志中有这样两行:

  • 问题内容: 我已经在托管jenkins和其他一些应用程序的ubuntu实例上将nginx设置为反向代理。我正在使用nginx根据相对路径路由到各种应用程序。从客户端到nginx的所有流量都通过https。在防火墙后面,nginx将所有内容通过http路由到配置的路径和端口号。看起来像这样: Nginx配置文件的相关部分是这样的: 问题是jenkins使用简单的身份验证,并且在成功登录后会发送302

  • 隐私设置->清除浏览数据(从时间开始) https/ssl->管理证书->删除所有项(包括证书) 检查没有书签。 Firefox也有类似的问题,但它的解决方案不适用于Chrome。有人对我能做些什么有什么建议吗?提前感谢您的帮助!