簡體   English   中英

Python部署到Google App Engine

[英]Python deploy to Google App Engine

我正在嘗試將python項目部署到GAE。 但我給出此錯誤消息“第14行,第1列:字符串類型的預期標量,但發現:序列開始”

你能幫我嗎

的app.yaml

application: app_name    #.appspot.com
version: baseline

runtime: python27
api_version: 1
threadsafe: yes 

default_expiration: 1h

builtins:
# Deferred is built in to Ferris. Do not enable it, it may lead to import errors.
- appstats: on  # Also turn on appstats in settings.py

includes:
- ferris/include.yaml
# If plugins require inculdes, put them here.

libraries:
- name: jinja2
  version: latest
- name: lxml
  version: latest
- name: webapp2
  version: latest
- name: webob
  version: latest

skip_files:
- ^(.*/)?app\.ya?ml
- ^(.*/)?index\.ya?ml
- ^(.*/)?#.*#
- ^(.*/)?.*~
- ^(.*/)?.*\.py[co]
- ^(.*/)?.*/RCS/.*
- ^(.*/)?\..*
- ^(.*/)?.*\.scss
- ^(.*/)?.*\.less
- ^/docs*

handlers:
# Main script
- url: .*
  script: main.main_app
  login: required

include.yaml文件內容在這里

handlers:
# Static resources
- url: /static
  static_dir: app/static

- url: /css
  static_dir: app/static/css

- url: /js
  static_dir: app/static/js

- url: /img
  static_dir: app/static/img

# Ferris static resources
- url: /ferris/static
  static_dir: ferris/static
  expiration: 7d

- url: /ferris/css
  static_dir: ferris/static/css
  expiration: 7d

- url: /ferris/js
  static_dir: ferris/static/js
  expiration: 7d

- url: /ferris/img
  static_dir: ferris/static/img
  expiration: 7d

- url: /ferris/fonts
  static_dir: ferris/static/fonts
  expiration: 7d

# Top-level static files
- url: /favicon\.ico
  static_files: app/static/favicon.ico
  upload: app/static/favicon\.ico
  expiration: 7d

- url: /robots\.txt
  static_files: app/static/robots.txt
  upload: app/static/robots\.txt
  expiration: 7d

- url: /humans\.txt
  static_files: app/static/humans.txt
  upload: app/static/humans\.txt
  expiration: 7d

# Maps plugins/{plugin}/static to /plugins/{plugin} 
- url: /plugins/(.*?)/(.*)
  static_files: plugins/\1/static/\2
  upload: plugins/(.*?)/static/(.*)

# Cron prefix is admin-only.
- url: /cron/.*
  script: main.main_app
  login: admin

# Used to fix imports before running deffered tasks.
- url: /_ah/queue/deferred
  script: main.deferred_app
  login: admin

檢查錯誤

字符串類型的預期標量,但發現:序列開始“

什么是標量類型?
標量是一個“單一”值 - 整數,布爾值,也許是一個字符串


檢查文檔

呼氣

可選的。 此處理程序提供的靜態文件的時間長度應由Web代理和瀏覽器緩存。 該值是一個由空格分隔的數字和單位 的字符串 ,其中單位可以是d表示天數, h表示小時數, m表示分鍾數, s表示秒數。 例如, "4d 5h"將緩存過期設置為首次請求文件后的4天和5小時。 請參閱靜態緩存過期。 如果省略,則使用應用程序的default_expiration。


檢查您的文件

ferris / include.yaml的幾個點,你有這樣的塊使用expiration

- url: /ferris/fonts
  static_dir: ferris/static/fonts
  expiration: 7d

在閱讀了文檔后,我們知道它需要一個字符串(這是一個標量類型)並且你給它7d ,它應該識別為錯誤中提到的序列開始


例如,解決方案應該像將expiration所有值更改為字符串一樣簡單

- url: /ferris/fonts
  static_dir: ferris/static/fonts
  expiration: "7d"

請注意插入的雙引號。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM