鱼C论坛

 找回密码
 立即注册
查看: 3922|回复: 4

关于python CGI编程的http 500错误问题

[复制链接]
发表于 2017-4-3 14:20:27 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
首先环境虚拟机centos7 python3.5
以下是我放在 /var/www/cgi-bin 文件夹中的cgi程序
  1. #!/usr/bin/python

  2. import cgi, cgitb
  3. import urllib.request
  4. import urllib.parse
  5. import json
  6. import time

  7. form = cgi.FieldStorage()

  8. site_name = form.getvalue('name')

  9. content = site_name

  10. url = "http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule&smartresult=ugc&sessionFrom=https://www.baidu.com/link"

  11. data = {}
  12. data["type"] = "AUTO"
  13. data["i"] = content
  14. data["doctype"] = "json"
  15. data["xmlVersion"] = "1.8"
  16. data["keyfrom"] = "fanyi.web"
  17. data["ue"] = "UTF-8"
  18. data["action"] = "FY_BY_CLICKBUTTON"
  19. data["typoResult"] = "true"

  20. data = urllib.parse.urlencode(data).encode("utf-8")

  21. req = urllib.request.Request(url,data)
  22. respose = urllib.request.urlopen(req)

  23. html = respose.read().decode("utf-8")

  24. target = json.loads(html)

  25. site_name = target["translateResult"][0][0]["tgt"]

  26. print ("Content-type:text/html")
  27. print ()
  28. print ("<html>")
  29. print ("<head>")
  30. print ("<meta charset="utf-8">")
  31. print ("<title>123</title>")
  32. print ("</head>")
  33. print ("<body>")
  34. print ("<h1>%s</h1>" % (site_name))
  35. print ("</body>")
  36. print ("</html>")
复制代码

代码我是觉得没有问题,在虚拟机上单独用其中的爬虫程序段运行了一下也没有任何问题

但是一跑到网页上就显示
0.png
一到 log 里面去找看到了以下的提示
1.png

于是乎我就把socket.py request.py的权限都改成了777
顺便一提 之前的cgi程序权限也是777 ,html的index.html权限也是777

但是还是现实500错误
无奈,发帖求助
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2017-4-16 22:14:44 | 显示全部楼层
sudo 一下
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-4-19 10:58:17 | 显示全部楼层

能具体点么…要sudo什么…
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-4-19 11:08:55 | 显示全部楼层
i__kid 发表于 2017-4-19 10:58
能具体点么…要sudo什么…

sudo 是命令, 你执行什么命令就 sudo 什么
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-4-19 19:46:34 | 显示全部楼层
好了 问题解决了
找了好久终于知道是SElinux的锅
这玩意不让浏览器访问服务器文件
修改/etc/selinux/config 文件
将SELINUX=enforcing改为SELINUX=disabled
重启机器即可
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-5-11 23:00

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表