Apache 虚拟主机 .. 重定向 .. ProxyPass .. 和别名

kme*_*ers 1 proxypass apache-2.2 apache-2.4

我已经尝试了几乎所有的方法,正在寻找以下方面的帮助......我们目前正在使用 Proxypass 进行重定向,但是我想创建一个别名并将每个人指向那里而不是 Proxypass。

当前,当您访问 server.org 时,它会重定向到 -> server.org/test/ 这是代理的 -> localhost:8080/test/

我想创建一个别名 /mm 以便将 server.org/mm/ 或 server.org/test/mm/ 重定向到提供的别名。

这可能吗?

我试过 (ProxyPass /mm !) 没有运气

提前致谢!

DocumentRoot "/var/www/html"
Redirect "/" "https://server.org/test/" 

Alias /mm "/var/opt/mm"

<Directory "/var/opt/mm">
    Options Indexes FollowSymLinks
    AllowOverride All
    Order allow,deny
    Allow from all
</Directory>

ProxyRequests Off

<Proxy *>
    Order deny,allow
    Allow from all
</Proxy>

ProxyPass /test/ http://localhost:8080/test/
ProxyPreserveHost On
ProxyStatus On        
Run Code Online (Sandbox Code Playgroud)

Fro*_*giz 5

这应该有效:

DocumentRoot /var/www/html
Redirect (!/mm) https://server.org/test/

Alias /mm "/var/opt/mm"
Alias /test/mm "/var/opt/mm"

<Directory "/var/opt/mm">
    Options Indexes FollowSymLinks
    AllowOverride All
</Directory>

ProxyRequests Off
ProxyPreserveHost On
ProxyStatus On  

ProxyPass /test/mm !
ProxyPass /test/ http://localhost:8080/test/
Run Code Online (Sandbox Code Playgroud)

如果您确定 /mm 在 url 中是唯一的,您可以更改

Alias /mm "/var/opt/mm"
Alias /test/mm "/var/opt/mm"
Run Code Online (Sandbox Code Playgroud)

经过

AliasMatch /mm "/var/opt/mm"
Run Code Online (Sandbox Code Playgroud)