我很难将我的样式表与 .yaml 文件链接起来。这是我的 yaml 文件:
我的目录看起来像这样:
|-- Assets -> css - js。
|-- 模板 -> 一堆我的 html。
|主程序
|应用.yaml
如果我直接从 url 上传 css,它工作正常。但是,它无法使用目录映射。这是我如何上传 CSS 的示例:
<link href="assets/css/animate.min.css" rel="stylesheet">
<link href="assets/css/bxslider.css" rel="stylesheet">
<link href="assets/css/magnific-popup.css" rel="stylesheet">
这是 yaml 文件:
application: app
version: 1
runtime: python27
api_version: 1
threadsafe: true
handlers:
- url: /assets/css/(.*\.css)
mime_type: text/css
static_files: /assets/css/\1
upload: /assets/css/(.*\.css)
- url: /assets/css/colors(.*\.css)
mime_type: text/css
static_files: /assets/css/colors\1
upload: /assets/css/colors(.*\.css)
- url: /assets/js/(.*\.js)
mime_type: text/js
static_files: /assets/js/\
upload: /assets/js/(.*\.js)
- url: .*
script: main.app
libraries:
- name: webapp2
version: "2.5.2"
- name: jinja2
version: latest
有什么想法吗?
SOLUTION:
application: app
version: 1
runtime: python27
api_version: 1
threadsafe: true
handlers:
- url: /assets/css(.*\.css)
mime_type: text/css
static_files: assets/css/\1
upload: assets/css/(.*\.css)
- url: /assets/css/colors(.*\.css)
mime_type: text/css
static_files: assets/css/colors/\1
upload: assets/css/colors(.*\.css)
- url: /assets/js/(.*\.js)
mime_type: text/js
static_files: assets/js/\1
upload: assets/js/(.*\.js)
- url: .*
script: main.app
libraries:
- name: webapp2
version: "2.5.2"
- name: jinja2
version: latest
最佳答案
两件事。首先,使您的样式表 hrefs 绝对化(即以 /
开头),因为它们始终相对于 Web 服务路径的基础,而不是相对于任何特定页面。
其次,在app.yaml
中,static_files
(和static_dir
)是相对于app的根目录的,所以去掉前导/
在这些路径上。
关于javascript - 将 CSS/CSS3/JS 链接到 Google App Engine?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20819727/