首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在webpy中提供文件?

如何在webpy中提供文件?
EN

Stack Overflow用户
提问于 2011-01-21 03:21:30
回答 3查看 11.9K关注 0票数 8

我使用的是webpy framefork。我想为其中一个请求提供静态文件。在webpy框架中有没有特殊的方法,或者我只需要读取并返回文件?

EN

回答 3

Stack Overflow用户

发布于 2012-02-23 09:36:55

在过去的几个小时里我一直在挣扎着...真讨厌!

我找到了两个对我都有效的解决方案。1-在.htaccess中,在ModRewrite行之前添加以下行:

代码语言:javascript
复制
RewriteCond %{REQUEST_URI} !^/static/.*

这将确保对/static/目录的请求不会被重写到您的code.py脚本。

2-在code.py中,为几个目录中的每个目录添加一个静态处理程序和一个url条目:

代码语言:javascript
复制
urls = (
    '/' , 'index' ,
    '/add', 'add' ,
    '/(js|css|images)/(.*)', 'static', 
    '/one' , 'one'
    )

class static:
    def GET(self, media, file):
        try:
            f = open(media+'/'+file, 'r')
            return f.read()
        except:
            return '' # you can send an 404 error here if you want

注意--我从web.py google群里偷走了这篇文章,但是再也找不到那篇该死的帖子了!

这两种方法都适用于我,无论是在web.py的模板中,还是直接调用我放入“静态”中的网页时都是如此。

票数 6
EN

Stack Overflow用户

发布于 2012-02-23 14:31:43

我不推荐使用web.py提供静态文件。你最好为它配置apache或nginx。

票数 1
EN

Stack Overflow用户

发布于 2018-08-12 07:34:47

其他的答案对我都不起作用。您可以首先在app.py中加载html文件,或者甚至在app.py中编写html。然后,您可以让index类的GET方法返回静态html。

代码语言:javascript
复制
index_html = '''<html>hello world!</html>'''

class index:
    def GET(self):
        return index_html
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4751508

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档