代码之家  ›  专栏  ›  技术社区  ›  wondim

在apache中使用anaconda python时,在头之前的脚本输出结束

  •  0
  • wondim  · 技术社区  · 8 年前

    我试图使用cgi在ubuntu上运行ananaconda python 2.7脚本,但是我得到了错误500,错误消息如下 var/log/apache2/error.log 是的。

     No such file or directory: AH01241: exec of '/var/www/html/app/getcapabilities.py' failed
     End of script output before headers: getcapabilities.py
    

    下面是我的apache apache2.conf的样子。

    <Directory /var/www/html/*>
      Options +ExecCGI
      AddHandler cgi-script .py
    </Directory>
    

    指挥部 which python 给了我一条路: /home/myuser/anaconda2/bin/python

    下面是我的python文件的样子。python脚本在windowsxamppache中运行良好。

    #!/home/myuser/anaconda2/bin/python
    print ("Content-Type: text/xml\n\n")
    print ('\n')
    print ('\n')
    print ('hello')
    

    我已经跟随了 this step 但也不适合我。

    如何解决此问题并能够在web浏览器上运行python脚本?

    1 回复  |  直到 8 年前
        1
  •  0
  •   wondim    8 年前

    这个问题是由于windows和linux的行尾差异造成的。文件以CRLF结尾,应该改为LF行结尾。我的文本编辑器pycharm可以在右下角或文件菜单中更改它,如下所示。所以将它改为unix和os x行分隔符解决了这个问题。

    enter image description here

    Pycharm的更多信息请查看此 link 是的。

    如果使用git,则在提交存储库时会自动修复此问题。

    编辑: 我最近发现需要使python文件可执行。即使我修复了行尾,我也有一个问题,通过选中“文件权限”中的复选框使文件可执行,解决了这个问题。

    enter image description here