需求描述
一个 app 运行在4567端口,我们要用 http://sinatra.cbd 来访问.
配置方法
服务器是 mac 的Apache2.
修改 hosts 文件
添加一行,让浏览器接收到 http://sinatra.cbd 后直接转向本机127.0.0.1 , 此时是80端口.
127.0.0.1 sinatra.cbd
修改 httpd.conf 配置
Apache 开启代理,将下面配置打开 – 去掉前面的#.LoadModuleproxy_module modules/mod_proxy.so LoadModuleproxy_ajp_modulemodules/mod_proxy_ajp.so LoadModuleproxy_balancer_modulemodules/mod_proxy_balancer.so LoadModuleproxy_connect_modulemodules/mod_proxy_connect.so LoadModuleproxy_ftp_modulemodules/mod_proxy_ftp.so LoadModuleproxy_http_modulemodules/mod_proxy_http.so
开启虚拟目录
# Virtual hosts Include /private/etc/apache2/extra/httpd-vhosts.conf
添加配置,监听80端口,指定 ServerName 为sinatra.cbd时,将所有 URL 转发到http://127.0.0.1:4567/
<VirtualHost *:80> ServerName sinatra.cbd ProxyRequests Off <Proxy *> Order deny,allow Allow from all </Proxy> ProxyPass / http://127.0.0.1:4567/ ProxyPassReverse / http://127.0.0.1:4567/ </VirtualHost>