首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >带路径空格的IIS FastCGI scriptProcessor?

带路径空格的IIS FastCGI scriptProcessor?
EN

Server Fault用户
提问于 2016-04-08 07:29:38
回答 2查看 4.3K关注 0票数 1

我正在尝试配置一个FastCGI模块--如果我使用一个没有空格的路径,整个过程都很好,但是我们的应用程序被安装到C:\Program和其他空间常见的路径中。

web.config的相关部分如下所示:

请不要将管道之后的部分用于配置WFastCGI --这是一种在IIS后面运行python服务器的方法。

EN

回答 2

Server Fault用户

回答已采纳

发布于 2017-08-07 09:23:19

您必须将Python脚本的路径用双引号括起来。必须使用"在XML中转义双引号。

您不必将Python可执行文件的路径用双引号括起来!事实上,这是行不通的!如果Python安装在一个包含空格的非标准路径中,那么您不需要做任何事情,因为空格只对可执行路径起作用(不是IIS/FastCGI模块对空格有问题,而是调用Python,其中脚本路径将作为单个参数传递)。

例如,如果Python安装在包含空格的非标准路径中(如果不适用于您,只需用C:\python27\替换它),配置如下。

applicationHost.config中:

代码语言:javascript
复制
<fastCgi>
  <application
   fullPath="C:\Program Files (x86)\MyApp\Python\python.exe"
   arguments=""C:\Program Files (x86)\MyApp\Python\Lib\site-packages\wfastcgi.py""
   [...] />
</fastCgi>

web.config中:

代码语言:javascript
复制
<add name="MyHandler"
    path="myapp.py"
    verb="*"
    modules="FastCgiModule"
    scriptProcessor="C:\Program Files (x86)\MyApp\Python\python.exe|"C:\Program Files (x86)\MyApp\Python\Lib\site-packages\wfastcgi.py""
    resourceType="Unspecified"
    requireAccess="Script" />

编辑:若要以编程方式使用applicationHost.config设置appcmd.exe,必须将参数中的双引号转义为\"。例如:

代码语言:javascript
复制
set config /section:system.webServer/fastCgi /+"[
  fullPath='C:\Program Files (x86)\MyApp\Python\python.exe',
  arguments='\"C:\Program Files (x86)\MyApp\Python\Lib\site-packages\wfastcgi.py\"',
  [...]
票数 1
EN

Server Fault用户

发布于 2016-04-09 04:34:01

尝试短8.3文件名。使用命令提示符,导航到可执行文件所在的位置,并使用以下命令:

代码语言:javascript
复制
dir /x

这将为您提供长和短的路径名称。短路径名称应该没有空格。看看这是否适合你。

票数 1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/768961

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档