安装了 Tornado 和 Python,但 Apache 仍在处理 .py 文件
如何让 Tornado(或一般的另一台服务器)处理我主机上的 .py 文件,同时 Apache 仍然处理 php 文件?
How do I get Tornado (or in general another server) to handle the .py files on my host, while Apache still handles the php files?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
我总是使用 mod_wsgi 在 apache 中配置我的 python 脚本。我相信没有办法将某些域/文件类型的执行委托给不同的服务器。不过,您可以编写一个脚本,以便在调用 url 时执行。
您可以在 python 中执行此操作并使用 mod_wsgi -> 调用它wsgi 文档
I've always configured my python scripts inside apache with mod_wsgi. I believe there's no way to relegate to a different server the execution of some domain/filetype. Still, you can make a script to execute whenever an url is called.
You can do it in python an call it with mod_wsgi -> wsgi docs
您可以使用 mod_wsgi 和 Tornado 的 WSGI 处理程序,如果您不介意失去 Tornado 的异步功能,或者您可以运行您的Tornado 应用程序和使用 Apache 代理。无论哪种情况,您可能都不希望像 PHP 文件通常那样单独执行每个 Python 文件。
至于一般的另一台服务器,这是相当广泛的,但如果它是一个Python应用程序,它可能实现WSGI,否则你需要代理它。
You can use mod_wsgi and Tornado's WSGI handler, if you don't mind losing the asynchronous features of Tornado, or you can run your Tornado app and proxy to it with Apache. In either case you probably don't want each Python file to be executed individually, the way PHP files often are.
As to in general another server, that's pretty broad, but if it's a Python app it probably implements WSGI, otherwise you'll need to proxy to it.
那么您有 Apache 作为 Web 负责人并在其后面运行 Tornado 吗?为什么不直接使用 ProxyPass 从端口 80 到 Tornado 运行的任何端口。
您无法让 Tornado 为 .py 文件提供服务,就像 PHP 为 .php 文件提供服务一样。
So you have Apache as the web head and Tornado running behind it? Why not just use ProxyPass from port 80 to whatever port Tornado is running on.
You can't get Tornado to serve the .py files like PHP can do with .php files.