我花了5天时间寻找谷歌和这里的解决方案,但必须有一些东西逃避我或我不理解,因此我没有。
我会详细解释。我想将url:port的所有请求重定向到同一个url,但是使用另一个端口sameurl:port。示例:example.com:9717到example.com:15617
我在.htaccess中尝试了各种方法,并在vhost中使用了proxypass但没有成功。
目前请求的目的是:
myexample.com:9713/key-private/data
我想将所有流量重定向到新端口:
myexample.com:15617/key-private/data
问题是我可以使用htaccess或proxypass重定向端口,但它不会重定向私钥数据,所以当它在新端口收到请求时会发出错误,指示私钥不存在或者是不正确的。我想这是因为重定向不会发送它,或者它没有正确执行。私钥是必不可少的,因为没有它,用户无法访问。
有人可以告诉我解决方案或让我走上正确的道路吗?
我使用过的例子:
NameVirtualHost IP:15617
<VirtualHost IP:15617>
ServerName example.com
ServerAlias www.example.com
DocumentRoot /var/www/data
ProxyRequests off
ProxyPass / http://IP:9713/
ProxyPassReverse / http://IP:9713/
</VirtualHost>
RewriteCond %{HTTP_HOST} ^example.com:9713$ [NC]
RewriteCond %{SERVER_PORT} ^9713$
RewriteRule ^(.*)$ http://example.com:15617/$1 [L,R=302]
RewriteCond %{REQUEST_URI} ^\/$
RewriteRule .* http://example.com:15617/ [R=301,L]
RewriteCond %{HTTP_HOST} ^example.com:9713$ [NC]
RewriteCond %{SERVER_PORT} ^9713$
RewriteRule ^(.*)$ http://example.com:15617/$1 [L,R=302]
RewriteCond ${SERVER_PORT} 9713/$1
RewriteRule ^(.*)$ http://example.com:15617/$1 [QSA,L]
我尝试了更多选项,但我没有添加它们,因为它们没有提出太长的问题。我知道有些东西逃脱了我,但我无法理解或发现它是什么。
非常感谢你,原谅我的英语,这很糟糕。
答案 0 :(得分:0)
在端口9713上,您希望 虚拟主机重定向到端口15617,对吗?所以像这样:
<VirtualHost *:9713>
ServerName example.com
ServerAlias www.example.com
RedirectMatch /(.*) http://www.example.com:15617/$1
</VirtualHost>