python - apache 后面的扭曲 Web 服务器 - 找不到资源

标签 python apache proxy twisted

我正在本地主机的端口 8001 和带有 mod_proxy 的 apache2 上运行twisted.web.server。 Apache根据以下配置设置为代理

http://localhost/jarvis ----> http://localhost:8001/

此规则的 httpd 配置是

ProxyPass /jarvis http://localhost:8001/
ProxyPassReverse /jarvis http://localhost:8001/

扭曲应用程序的服务器配置代码片段如下:

if __name__ == '__main__':
root = Resource()
root.putChild("clientauth", boshProtocol())
logging.basicConfig()
factory = Site(root)
reactor.listenTCP(8001, factory)
reactor.run()

当我去

http://localhost:8001/clientauth 

它按预期运行。 但是当我使用

http://localhost/jarvis/clientauth

它给出错误 - “没有这样的子资源。” 据我了解 - 请求被正确代理到扭曲的网络服务器。但是为什么子资源没有被识别呢?

最佳答案

您缺少 RewriteRule。我还没有测试过,但解决你的问题或多或少是这样的:

RewriteRule ^/jarvis/(.*)/$1

请务必启用 mod_rewrite。

这是我通常引用的链接:http://httpd.apache.org/docs/2.0/misc/rewriteguide.html

祝你好运!

关于python - apache 后面的扭曲 Web 服务器 - 找不到资源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14058089/

相关文章:

apache - Solr Range Facets 根据搜索查询动态修改范围

dns - Behat + Mink 无法使用代理(DNS 无法解析域名)

python - pandas.to_datetime : which format to choose?

python - Keras 训练在多次正确执行后崩溃

php - 在 cPanel 中创建自定义 PHP 错误页面,而不将它们从抛出错误的页面重定向

node.js - Websockets nginx 反向代理 + Cloudflare

docker - 如何在 .gitlab-ci.yml 文件中为代理设置环境变量?

python - 关于从 C++ 创建 Python 库的建议?

python - 使用 C 扩展模块运行 tox

linux - Debian DNS Jessie - 辅助服务器的子域