隐形 Apache 重定向

隐形 Apache 重定向

我希望 subdomain.mydomain.com 隐形重定向到https://[我的服务器IP]:2083

(这里存在 SSL 问题)。

到目前为止我已经成功做到了,但是重定向是可见的,我不想要它:

RewriteCond %{HTTPS} off
RewriteCond %{HTTP_HOST} ^subdomain.\.mydomain\.com$
RewriteRule ^ https://[myServerIP]:2083/

这是否可以成为一种实现相同重定向的方法,同时在地址栏中永久保留我漂亮的“subdomain.mydomain.com”?

使用 ProxyPass 指令进行编辑:

我尝试了 ProxyPass 的一些变化,但它仍然会改变地址栏中的 URL:

ServerName subdomain.mydomain.com

<Location />
        ProxyPass               https://[myServerIP]:2083/
        ProxyPassReverse        https://[myServerIP]:2083/
</Location>

RewriteCond %{HTTPS} off
RewriteCond %{HTTP_HOST} ^subdomain\.mydomain\.com$
RewriteRule ^ https://[myServerIP]:2083/

编辑2:

它仍然不起作用:

#non SSL
ServerName subdomain.mydomain.com

#SSL!
<Location />
        ProxyPass               https://[myServerIP]:2083/
        ProxyPassReverse        https://[myServerIP]:2083/
</Location>

编辑3:

现在可以使用该SSLProxyEngine指令:

SSLProxyEngine on
ServerName subdomain.mydomain.com

<Location />
        ProxyPass               https://[myServerIP]:2083/
        ProxyPassReverse        https://[myServerIP]:2083/
</Location>

我现在可以访问我的登录界面 (cPanel)。但是,一旦我登录,它不会重定向到下一页subdomain.mydomain.com/cpsess5850710203/

答案1

ProxyPass您可以使用and指令实现您的目标(不更改地址栏)ProxyPassReverse。例如:

<Location />
    ProxyPass https://[myServerIP]:2083
    ProxyPassReverse https://[myServerIP]:2083
</Location>

这将内部请求该网站并将其提供给浏览器。

答案2

你正在寻找的是反向代理

相关内容