在IIS

时间:2017-12-22 16:13:34

标签: python selenium iis flask phantomjs

我开发了一个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

1 个答案:

答案 0 :(得分:0)

好的,我解决了。只是将IIS和应用程序池上的网站设置配置为网站的特定路径,授予IIS用户(IIS_USRS)所有权限,并且它可以正常工作。 Ty无论如何!。

如果您知道任何其他方法来解决此问题,请发布。我会标记它是否也有效。