我有一个在端口 3000 上运行的 Metrace 应用程序。我可以使用 www.myurl.com:3000 成功连接到该程序,但更愿意通过 www.myurl.com/myappname 连接到它。我按照此网站上的说明开始操作:http://www.andrehonsberg.com/article/deploy-meteorjs-vhosts-ubuntu1204-mongodb-apache-proxy 我有以下 Apache 配置文件:
<VirtualHost *:80>
ServerName myurl.com
ProxyRequests off
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
<Location />
ProxyPass http://localhost:3000/
ProxyPassReverse http://localhost:3000/
</Location>
</VirtualHost>
我不知道如何从这里继续获取 www.mysite.com/myapp 上的程序。在其他情况下,我会在 Apache 配置文件中使用别名,但在这种情况下这似乎不是正确的方向。
如何配置 Apache 将端口 3000 发送到 www.myurl.com/myapp?
答案1
尝试将 更改为<Location />
。<Location /myapp/>
请参见这一页用于文档。
片段:
代理通行证
此指令允许将远程服务器映射到本地服务器的空间中;本地服务器不充当传统意义上的代理,而是看起来像是远程服务器的镜像。本地服务器通常称为反向代理或网关。path 是本地虚拟路径的名称;url 是远程服务器的部分 URL,不能包含查询字符串。
在部分内使用时
<Location>
,第一个参数被省略,并从中获取本地目录<Location>
。在部分内也会发生同样的情况<LocationMatch>
,但是 ProxyPass 不会这样解释正则表达式,因此在这种情况下需要使用 ProxyPassMatch。