重写规则从Rails服务器的URL隐藏端口?

Roy*_*Roy 3 apache mod-rewrite

我有一个在URL"http://example.com:1234"上运行的rails服务器我想向用户提供此应用程序的URL为"http://example.com/myapp",以便Apache(或Rack或无论你建议什么工作)可以将"/ myapp"的请求重定向到该域的端口3333.

Jon*_*Lin 6

看看在apache下设置反向代理.

在example.com上侦听端口80的Apache会将代理转发到端口1234.然后,对http://example.com/myapp的请求将在内部代理到http://example.com:1234/myapp(或者你设置您的ProxyPass目标).

如果您无权访问服务器配置,则可以使用mod_rewrite的Proxy标志并在.htaccess文件中设置一些规则.有点像:

RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^myapp(.*) http://example.com:1234/$1 [P,L]
Run Code Online (Sandbox Code Playgroud)