不打开HTML文件我有一个生成包含链接列表的网页一个简单的Python模块。此页面通过webbrowser.open('file://' + file.name)
在浏览器中自动打开:这里没有问题。
从这个网页,点击链接上时(其中有像http://localhost/cgi-bin/script.py?param1=Something
A HREF)它的午餐CGI脚本执行与传递的值,并在年底一些操作产生一个新的网页,在我的机器上本地存储(例如在像/home/user/web/out/
这样的路径中),在我正确设置所有rwx权限的文件夹中。
那么,我一直试图在浏览器中自动打开这个新页面两天,尝试使用通过文档和论坛搜索的所有解决方案。我再次尝试webbrowser.open()
,但后来我意识到我无法使用它,因为从Web服务器我无法打开新的浏览器窗口本身。然后我试图与重定向,先打印头(print "Content-type: text/html\n\n"
),然后Python的CGI脚本在本地目录
print "Status: 302 Moved"
print "Location: file:///home/user/web/out/abc.html\n\n"`
但这只是显示一个普通的空白页。我给一个尝试其他重定向解决方案,如
print "<meta http-equiv='refresh' content='0' url='file:///home/user/web/out/abc.html'>"
print "<script type="text/javascript">location.href='file:///home/user/web/out/abc.html';</script>"
print "<script type="text/javascript">windows.open('file:///home/user/web/out/abc.html');</script>"
我甚至尝试插入按钮与POST
方法触发新页面的打开,没有成功:我不断收到一个普通的空白页。
值得一说的是,如果我手动打开浏览器这个abc.html
页面,则正常显示。
我认为这与事实,我从Web服务器打开HTML页面在本地存储做的,但我不知道如何解决这个问题。有人能指出我正确的方向吗?
我只是猜测,但如果你能重定向到本地文件,然后每个人都主办网站将能够从你的电脑读取的所有内容。所以也许你不能从一个网站重定向到本地文件。但是您可以使用服务器打开本地文件并提供内容。 – User
@用户呃...你说的'为内容提供服务'是什么意思?我实际上设法编写了要在'cgi-bin/out/abc.html'中打开的新网页,但是我仍然没有得到脚本来打开它甚至重定向到它。 – Faabiioo
CGI脚本无法重定向我记得。 'http.server'中的'self.send_response(200,“Script output outputs following”)''。 – User