linux下cgi环境搭建,Linux+Python+Apache+CGI的环境搭建

在学习Python的CGI编程中,碰到了一些问题,在此处记录下来。地址:Python CGI编程

bda757205541

bda757205541

按照教程配置环境的过程中,首先报错命令不存在。

bda757205541

搜索后无果,未能解决没有这两个指令的问题,仅得知ScriptAlias和AddHandler 指令,是apache的指令。在《Apache服务器指令大全》中有这么一段:3.6、ScriptAlias

该指令除了把目标目录标记为包含CGI脚本以外,和Alias功能相同。

3.7、ScriptAliasMatch

该指令出使用规则表达式以外,和ScriptAlias命令相似。

了解到这两个指令的作用应该是修改了某个配置文件的某些配置。

于是重新搜索Linux、Python、CGI、Apache指令、ScriptAlias等关键词,发现通过修改httpd.conf配置文件即可完成ScriptAlias、ScriptAliasMatch的配置。

bda757205541

第一步就发现,找不到#ScriptInterpreterSource Registry ,只好按照文中所言,自行添加。

添加完毕,完成步骤2、3后,尝试访问py文件:http://168.***.**.***/cgi-bin/hello2.py ,显示500错误。

bda757205541

想了下发现没有重启apache,执行service httpd restart ,成功关闭,但是启动却失败了。以为有点类似重启pptpd服务的时候,由于线程仍在运行而导致的。索性直接reboot了。结果reboot后依旧无法start ,找了好久原因,没找到。(现在反省发现,修改了配置文件后,无法启动服务,应该第一时间检查修改的配置文件。)

于是只好卸载阿帕奇后,重新安装。CentOS卸载Apache方法 ,安装使用yum源安装。

安装好后,搜索ScriptInterpreterSource 关键字发现,这个指令居然只在Windows环境下下有效...仔细一看上面的教程,是Windows的环境。

所以明显是参考了错误的教程,又重新查找教程,看到了这个贴:apache+cgi+python配置

bda757205541

照做之后,访问hello.py,依旧出现了500错误。

查看日志、搜索500错误后,怀疑是否py文件输出的内容不对,如没有输出空格隔开http头等,又怀疑是否python版本不对,print需要加() ,尝试数次后,终于成功啦。

bda757205541

环境搭建完成后的如果出现500错误,很可能是py文件本身有问题。

bda757205541

终于明白ScriptInterpreterSource 是干嘛的,以及为何只能在Windows环境中有效。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值