在这里没有答案后,我做了一些更多的挖掘并将在其他地方找到的解决方案组合在一起 - 以下是我从配置 pow 以使用 rack-legacy 处理 php 文件时已经知道的内容,以及来自互联网上其他地方的一些知识的组合:
解决方案在于另一个 gem:rack-reverse-proxy。
如果您还没有安装 gem,只需运行
gem install rack-reverse-proxy
从命令行
一旦你安装了它,从一个 php 项目中修改一个现有的 config.ru 文件以适应这里并在所有对 Tomcat 的请求上进行转发是一件相对简单的事情。
假设您的本地 tomcat 服务器正在端口 8001 上运行:
require 'rack'
require 'rack/reverse_proxy'
require 'rack-rewrite'
INDEXES = ['index.html','index.php', 'index.cgi']
ENV['SERVER_PROTOCOL'] = "HTTP/1.1"
use Rack::ReverseProxy do
# Set :preserve_host to true globally (default is true already)
reverse_proxy_options :preserve_host => true
# Forward the path /* to tomcat.
# You can limit this to requests to certain paths by providing a more specific
# path as the first argument
reverse_proxy '/', 'http://localhost:8081'
end
use Rack::ReverseProxy
run Rack::File.new Dir.getwd
毕竟真的就这么简单。
我希望这些知识可以帮助其他人在我未来的奇怪情况下!