我开发了一个python web应用程序,我正在尝试在IIS上正确部署它。 在我将应用程序启动到生产服务器之前,我正在VM上对其进行测试。
我做的所有步骤:
使用CGI安装IIS
安装IIS后,我下载了网络平台安装程序
我安装了WFastCGI for Python 3(我的版本)
我配置了处理程序映射和CGI设置来部署我的应用程序,一切都很好。
除一部分外,本网站全部正常运作。网站的一个功能是需要执行一个webdriver,在本例中是PhantomJS,带有selenium python模块。
PhantomJS可执行文件位于网站的根文件夹中:
PhantomJSPath = 'phantomjs/bin/phantomjs.exe'
但是当我尝试使用声明变量来选择webdriver时,他只是不在IIS上运行(当我打开该功能的特定页面时,它给我一个500错误,所有其他页面都能正常工作)。愚蠢的是,当我在端口5000上通过Flask开发模式执行时,它运行得非常好。
browser = webdriver.PhantomJS(PhantomJSPath)
我尝试过很多东西,比如给网络应用程序文件夹中的所有人提供所有权限等等。我认为问题出在IIS配置或安全设置上。
我希望你能帮助我和所有其他人有同样的问题;)TY
答案 0 :(得分:0)
好的,我解决了。只是将IIS和应用程序池上的网站设置配置为网站的特定路径,授予IIS用户(IIS_USRS)所有权限,并且它可以正常工作。 Ty无论如何!。
如果您知道任何其他方法来解决此问题,请发布。我会标记它是否也有效。