我有一台运行ubuntu虚拟机的Windows计算机。 ubuntu虚拟机有一个使用mod_wsgi在apache上运行的Flask应用程序。 我还设置PyCharm使用Vagrant作为我的远程python解释器。
我可以调试脚本,但我似乎无法找到一种方法来调试正在运行的实际烧瓶应用程序。
Vagrant共享代码文件夹并转发端口80 => 8080
我可以通过在Windows中访问127.0.0.1:8080来访问chrome中的烧瓶应用程序。
我还尝试通过复制pyhton-debug.egg并将以下内容添加到我的 init .py文件中来遵循PyCharm指南
if __name__ =='__main__':
app.run(host='0.0.0.0', port=80, threaded=True)
import sys
sys.path.append('/home/vagrant/code/Flask-App/pycharm-debug.egg')
import pydevd
pydevd.settrace('0.0.0.0', port=8080, stdoutToServer=True, stderrToServer=True)
答案 0 :(得分:1)
出于某种原因我的导入pydevd似乎没有正常工作所以我使用easy_install来安装鸡蛋,它似乎没问题。
我还必须将ip地址更改为从我的虚拟机到我的Windows机器的ip地址,并在调试配置中使用这些设置。
所以我的 init .py文件有
导入pydevd pydevd.settrace('10 .0.2.2',port = 80,stdoutToServer = True,stderrToServer = True)