- 论坛徽章:
- 0
|
cgi程序很简单,如下所示- #!/usr/bin/env python
- import cgi
- form=cgi.FieldStorage()
- text=form.getvalue('text',open('simple_edit.dat').read())
- f=open('simple_edit.dat','w')
- f.write(text)
- f.close()
- print """Content-type: text/html
- <html>
- <head>
- <title>A simple Editor</title>
- </head>
- <body>
- <form action='simple_edit.cgi' method='POST'>
- <textarea rows='10' cols='20' name='text'> %s </textarea><br />
- <input type='submit' />
- </form>
- </body>
- </html>
- """ % text
- ~
复制代码 把它 放到 /var/www/cgi-bin中,打开apache服务器,但是从浏览器登录时出现错误,去log中查看,问题出在 f=open('simple_edit.dat','w')这里。
simple_edit.dat已经设置成了 777 权限。
并且我在命令行下 直接执行这个 python 程序是没有问题的,可以以写的模式打开这个文件,但是在浏览器中是无法打开的。
我现在猜测问题可能出在 httpd的配置上,但是我查看了配置文件,也没有找到相关资料。
大家有类似经验吗?在 cgi中以写模式打开文件。
谢谢大家了。
补充:
如果把 f=open('simple_edit.dat','w')改成 f=open('simple_edit.dat','r'),在浏览器中是可以打开的,
所以问题就是出在 无法以写的形式打开, 但是文件我已经设置成了 777了,怎么会事呢? |
|