我已经配置了HAProxy。这会通过浏览器将某些域从http重定向到https。它通过浏览器满足我的所有要求。
但是当我尝试通过curl(命令行)使用api时,当我使用http://时它无效
我怀疑的是我如何将所有curl或命令行请求重定向到https。这是我尝试使用http curl时的输出。
$ curl -s -v -u $USER:$PASS -X GET -H "Content-Type: application/json" http://<IP>/rest/api/2/project/
* Trying 192.168.1.21...
* Connected to test-jira.example.com (192.168.1.21) port 80 (#0)
* Server auth using Basic with user 'prash.castlestreet'
GET /rest/api/2/project/ HTTP/1.1
Host: prash.castlestreet.example.com
Authorization: Basic cHJhZGVlcC5jaGVydXRodWRpeWlsZ2lyaWphdmFsbGFiaGFuOlZlcml6b24h
User-Agent: curl/7.43.0
Accept: */*
Content-Type: application/json
HTTP/1.1 302 Found
Cache-Control: no-cache
Content-length: 0
Location: https://prash.castlestreet.example.com/rest/api/2/project/
Connection: close
Closing connection 0
谢谢, 黄芪多糖
答案 0 :(得分:2)
HAProxy似乎完全正常工作。
您遇到的问题是,除非您通过添加-L
或--location
命令行选项明确告知它,否则curl不会遵循HTTP重定向。