`
ego008
  • 浏览: 152681 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

GAE中使用静态文件的三种方法

阅读更多
1)在app.yaml文件里定义,这是最常见,最简单的方法,如:

- url: /media
  static_dir: media

注意:如果引用模板,则不能把templates定义为静态文件目录,否则会提示 TemplateDoesNotExist Error

2)使用zipserve,好处是可以把很多文件打包,因为GAE有1000个文件限制,如:

在根目录下添加tinymce.zip文件(不能为.rar)

在app.yaml里添加:

- url: /tinymce/.*
  script: $PYTHON_LIB/google/appengine/ext/zipserve

然后在view.py文件里导入zipserve模块

from google.appengine.ext import zipserve

在模板文件里就可以直接这样引用:

/tinymce/xxxxxx

注意:app.yaml里好象只能定义一个zipserve,例如

我已经定义了

- url: /tinymce/.*
  script: $PYTHON_LIB/google/appengine/ext/zipserve

就不能再定义

- url: /syntaxhighlighter/.*
  script: $PYTHON_LIB/google/appengine/ext/zipserve

本人测试不能正常调用/syntaxhighlighter/里的文件

3)使用django的静态文件服务

在urls.py里添加

import os

urlpatterns = auth_patterns + patterns('',

    ……
    (r'^themes/(?P<path>.*)$', 'django.views.static.serve',
        {'document_root': os.path.dirname(os.path.abspath(__file__)) + '/themes/'}),      
) + urlpatterns


原文http://gae-django-cms.appspot.com/cms/show_article/32061.html
分享到:
评论
1 楼 kangle1208 2009-12-01  
您好,目前关于GAE应用,很多都是python的,我想问一下,用java的话,如何对静态文件进行读取操作呢?

默认情况下:web-inf下的所有文件都是静态文件,我的工程结构如下:
war
--web-inf
----classes
----devices
------***.zip

我想在doGet中将***.zip返回给客户端
File file = new File("/devices/***.zip"); 这句可以过
FileInputStream reader = new FileInputStream(file); 这一句就出错了,
说我access denied,后来我修改了java.plicy文件,还是不行。

请问这个问题如何解决呢? 谢谢~~

相关推荐

    在GAE中使用django模板

    标题 "在GAE中使用django模板" 涉及到的知识点主要是在Google App Engine (GAE)上部署和使用Django模板系统。GAE是一个由Google提供的平台,允许开发者构建和运行web应用,而Django则是一个流行的Python web框架,它...

    在GAE中读取yaml的例子

    在Google App Engine (GAE) 中,YAML(YAML Ain't Markup Language)是一种常用的数据序列化格式,常用于配置文件。这篇博文“在GAE中读取yaml的例子”探讨了如何在GAE环境中解析和使用YAML配置文件。GAE是一个基于...

    如何在GAE中轻松使用Django框架

    确保设置适合GAE环境,例如使用Google Cloud Datastore作为数据库,设置静态文件路径和媒体文件路径: ```python DATABASES = { 'default': { 'ENGINE': 'django.db.backends.djangostorage', 'OPTIONS': { '...

    gae-static-yaml:使用每个静态文件的处理程序自动生成GAE app.yaml文件-与自定义404处理程序一起使用

    gae-static-yaml的目的是轻松为Google App Engine生成一个app.yaml文件,其中包括模块中每个静态文件的静态文件处理程序。 通过为每个文件显式定义一个处理程序,您便可以使用全部处理程序来服务自定义404页面。 ...

    关于GAE的教程、工具与文档(建站)

    8. **静态文件与缓存**:GAE可以便捷地托管静态文件,如CSS、JavaScript和图片。同时,它也支持CDN(内容分发网络)以提高性能。 9. **监控与日志**:GAE提供了详细的监控工具,可以跟踪应用的性能指标,如请求率、...

    GAE blog安装

    在给定的文件名称列表中,我们看到了`index.yaml`,这通常是用于定义应用的索引规则,比如URL路由和静态文件处理。 3. **语言和框架**:GAE支持多种编程语言,如Python、Java、Go等。由于没有明确指出使用的语言,...

    GAE入门教程.pdf

    - GAE 支持处理 CSS, JS 和图片等静态文件,它们可以直接被用户浏览器访问。 10. **上传应用程序** - 使用 `appcfg.py` 命令,开发者可以将完成的 web 应用上传至 Google 服务器进行部署。 通过这个入门教程,你...

    GAE入门教程.docx

    9. **处理静态文件**: GAE 同样支持处理 CSS、JavaScript 和图片等静态资源,这对于构建现代 web 应用是必不可少的。 10. **上传应用程序**: 最后,开发者会学习如何使用 `appcfg.py` 将本地开发的应用上传到 ...

    小学期GAE项目 python+Django框架实现的博客

    4. **静态文件**:包括CSS、JavaScript和图片资源。 5. **测试文件**:用于验证代码功能的正确性。 6. **文档**:可能包括README文件,介绍如何安装、运行和部署项目,以及项目结构和功能的详细说明。 对于想要学习...

    gae-django-cms-v1.2.3_cn.zip

    5. **源代码结构**:虽然没有提供具体的子文件列表,但通常会包含Django项目的标准目录结构,如`manage.py`、`app`目录、`settings.py`、`urls.py`等,以及CMS相关的模型、视图、模板和静态文件。 6. **部署与配置*...

    利用DJANGO在GAE上实现小型网络爬虫

    在`app.yaml`中声明你的Django应用作为WSGI服务器,并配置好静态文件和服务端口。 接着,我们需要创建Django项目和应用。在Django项目中,创建一个新应用,比如命名为`spider`,在这个应用下编写爬虫逻辑。可以定义...

    GAE 应用发布管理 AppScale.zip

    AppScale 是一个强大的工具,为开发者提供了在不同环境中运行 GAE 应用的自由,特别是对于使用 Go 语言的开发者,它提供了一个高效且灵活的平台。通过理解和掌握如何使用 appscale-master 文件,你可以自行搭建和...

    gae-django-cms-v2.01.zip

    - **静态文件**:如CSS、JavaScript和图片文件,用于构建用户界面和交互。 - **模板文件**:`.html`文件,定义了网页的布局和内容。 - **配置文件**:如`settings.py`,包含了项目的配置信息,如数据库设置、应用ID...

    python开发的在线文件目录浏览器

    - `static/`: 静态文件目录,包含CSS、JavaScript和图片等资源。 - `requirements.txt`: 依赖项列表,列出项目运行所需的Python库及其版本。 在开发过程中,开发者可能使用了如GAE SDK、Flask或Django框架,以及...

    projeto-site:用于在Google App Engine(GAE)上创建静态网站的文件

    项目现场用于在Google App Engine(GAE)上创建静态网站的文件OBS。 :将app.yaml文件中的变量“ application:project-site”更改为您的项目ID。 在以下位置运行的应用程序: : 在HTML模板Spirit8 - -是基于HTML...

    IOS应用源码——nevyn-overload-0.3-0-gae3b7f5.zip

    5. **Podfile或Carthage**:如果项目使用了CocoaPods或Carthage进行依赖管理,这些文件会列出所依赖的第三方库。 6. ** Targets**:每个目标代表一个可构建的产品,可能是应用本身或静态库。 7. **Tests**:可能包含...

    gae-java-first:Java 中的 Google Appengine 示例

    在这个"gae-java-first"项目中,我们将探讨如何使用Java在Google App Engine上构建和部署一个简单的应用。 首先,我们需要了解Google App Engine的基本概念。GAE为开发者提供了云平台,可以处理Web应用程序的服务器...

    Developing with Google App Engine

    - **数据存储API**:详细解释了GAE数据存储API的使用方法,包括实体、唯一标识符的概念。 - **实体组与事务**:讨论了实体组的概念以及如何在GAE中实现事务操作。 - **持久化示例**:通过一个具体的应用实例,展示了...

    gae-django-cms-encry:使gae-django-cms中的网页中浏览器中显示正常,查看源代码时乱码

    2. **静态文件服务**:GAE可能自动处理静态文件,确保静态HTML文件的编码设置正确。 3. **跨语言兼容**:如果应用需要支持多种语言,需要确保翻译文件(如`.po`或`.json`)使用一致的编码。 通过检查和修改上述...

    secure-gae-drive:远程安全GAE驱动器

    7. **文档**:可能包含README文件或其他文档,解释项目用途、安装和部署指南、API使用方法等。 综上所述,"secure-gae-drive"项目涵盖了Google App Engine的应用开发、云存储(尤其是Google Drive)的集成、前端...

Global site tag (gtag.js) - Google Analytics