Twisted Python:如何为本地主机连接使用不同的资源层次结构?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Twisted Python:如何为本地主机连接使用不同的资源层次结构?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2319字,纯文字阅读大概需要4分钟。
内容图文
![Twisted Python:如何为本地主机连接使用不同的资源层次结构?](/upload/InfoBanner/zyjiaocheng/673/8e39e78444b143a68684e0a292a935ca.jpg)
我想对本地主机连接使用一种资源层次结构,对所有其他连接使用另一种资源层次结构.我将如何处理?
publicSite = Site(File("/var/www/"))
localhostSite = Site(File("/var/localhost/"))
publicServer = TCPServer(80, publicSite, interface="0.0.0.0")
localhostServer = TCPServer(80, localhostSite, interface="127.0.0.1")
看来您无法同时收听两个不同的界面.
我收到以下错误:
Traceback (most recent call last):
File "/usr/bin/twistd", line 21, in <module>
run()
File "/usr/lib/python2.5/site-packages/twisted/scripts/twistd.py", line 27, in run
app.run(runApp, ServerOptions)
File "/usr/lib/python2.5/site-packages/twisted/application/app.py", line 379, in run
runApp(config)
File "/usr/lib/python2.5/site-packages/twisted/scripts/twistd.py", line 23, in runApp
_SomeApplicationRunner(config).run()
File "/usr/lib/python2.5/site-packages/twisted/application/app.py", line 158, in run
self.postApplication()
File "/usr/lib/python2.5/site-packages/twisted/scripts/_twistd_unix.py", line 213, in postApplication
startApplication(self.config, self.application)
File "/usr/lib/python2.5/site-packages/twisted/scripts/_twistd_unix.py", line 174, in startApplication
service.IService(application).privilegedStartService()
File "/usr/lib/python2.5/site-packages/twisted/application/service.py", line 228, in privilegedStartService
service.privilegedStartService()
File "/usr/lib/python2.5/site-packages/twisted/application/internet.py", line 68, in privilegedStartService
self._port = self._getPort()
File "/usr/lib/python2.5/site-packages/twisted/application/internet.py", line 86, in _getPort
return getattr(reactor, 'listen'+self.method)(*self.args, **self.kwargs)
File "/usr/lib/python2.5/site-packages/twisted/internet/posixbase.py", line 467, in listenTCP
p.startListening()
File "/usr/lib/python2.5/site-packages/twisted/internet/tcp.py", line 733, in startListening
raise CannotListenError, (self.interface, self.port, le)
twisted.internet.error.CannotListenError: Couldn't listen on 127.0.0.1:80: (98, 'Address already in use').
1个
解决方法:
不必绑定到第二台服务器的0.0.0.0,而是绑定到服务器上的一个或多个公共地址. Twisted不提供任何API来枚举主机上的地址,也不提供区分公共地址和私有地址的原因(因为您的“公共”地址可能是10.xxx,并且防火墙正在从“实际上”转发流量)的公共地址).
如果需要发现地址而不是通过配置来提供地址,则在POSIX上为this ioctl example might help.
内容总结
以上是互联网集市为您收集整理的Twisted Python:如何为本地主机连接使用不同的资源层次结构?全部内容,希望文章能够帮你解决Twisted Python:如何为本地主机连接使用不同的资源层次结构?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。