1

ポート 8001 で localhost と 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

「そのような子リソースはありません」というエラーが表示されます。私が理解しているように、リクエストはツイストWebサーバーに正しくプロキシされています。しかし、なぜ子リソースが識別されないのでしょうか?

4

1 に答える 1

1

RewriteRule がありません。私はそれをテストしていませんが、問題の修正は多かれ少なかれ次のようになります。

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

mod_rewrite が有効になっていることを確認してください。

私が通常参照するリンクは次のとおりです。http://httpd.apache.org/docs/2.0/misc/rewriteguide.html

幸運を!

于 2012-12-28T11:07:54.377 に答える