6

私は Google App Engine の初心者であり、Python での Web 開発も行っています。小さな Python ベースのアプリを作成した後、過去 6 日間、それを GAE にアップロードしようと試みてきました。以下の「app.yaml」ファイルには、その後に表示されるエラーが表示されます。

APP.YAML (更新)

application: web2py
version: 1
runtime: python27
api_version: 1
threadsafe: false

default_expiration: "24h"

handlers: 
- url: /(?P<a>.+?)/static/(?P<b>.+)
  static_files: applications/\1/static/\2
  upload: applications/(.+?)/static/(.+)
  secure: optional

- url: /favicon.ico
  static_files: applications/welcome/static/favicon.ico
  upload: applications/welcome/static/favicon.ico

- url: /robots.txt
  static_files: applications/welcome/static/robots.txt
  upload: applications/welcome/static/robots.txt

- url: .*
#  script: gaehandler.py         # CGI
#  script: web2py.app # ?
  script: gaehandler.wsgiapp    # WSGI (Python 2.7 only)
  secure: optional

admin_console:
  pages:
  - name: Appstats
    url: /_ah/stats

skip_files: |
 ^(.*/)?(
 (app\.yaml)|
 (app\.yml)|
 (index\.yaml)|
 (index\.yml)|
 (#.*#)|
 (.*~)|
 (.*\.py[co])|
 (.*/RCS/.*)|
 (\..*)|
 (applications/(admin|examples)/.*)|
 ((admin|examples)\.(w2p|tar))|
 (applications/.*?/(cron|databases|errors|cache|sessions)/.*)|
 ((logs|scripts)/.*)|
 (anyserver\.py)|
 (web2py\.py)|
 ((cgi|fcgi|modpython|wsgi)handler\.py)|
 (epydoc\.(conf|css))|
 (httpserver\.log)|
 (logging\.example\.conf)|
 (route[rs]\.example\.py)|
 (setup_(app|exe)\.py)|
 (splashlogo\.gif)|
 (parameters_\d+\.py)|
 (options_std.py)|
 (gluon/tests/.*)|
 (gluon/(rocket|winservice)\.py)|
 (contrib/(gateways|markdown|memcache|pymysql)/.*)|
 (contrib/(populate|taskbar_widget)\.py)|
 (google_appengine/.*)|
 (.*\.(bak|orig))|
 )$

builtins:
- remote_api: on
- appstats: on
- admin_redirect: on
- deferred: on

Python 2.7.3 の使用中に Google App Engine で次のエラーが発生する

GAE での YAML エラー

*** Running dev_appserver with the following flags:
    --admin_console_server= --port=8080 --use_sqlite
Python command: /usr/local/bin/python2.7
ERROR    2012-11-22 05:24:13,142 dev_appserver_main.py:626] Fatal error when loading application configuration:
mapping values are not allowed here
  in "/Applications/+++WWW+++/GAE/gae3web2py/app.yaml", line 9, column 9

誰かが親切に私を助けてくれたら、特にこのアメリカの「感謝祭」の日に、私はとても感謝します! ;-)


更新しました

「app.yaml」ファイルは、提案された間隔で更新されました。しかし、それでも同じエラーが発生します。

ここでも試してみましたが、同じエラーが発生します: Link > http://yaml-online-parser.appspot.com/

4

4 に答える 4

1

構文に問題がありYAMLます。構文について混乱したことがある場合は、ここで仕様を見つけることができます。

セクション2.1から-コレクション:

YAMLのブロックコレクションはスコープにインデントを使用し、各エントリを独自の行で開始します。ブロックシーケンスは、各エントリをダッシュ​​とスペース( "-")で示します。マッピングでは、コロンとスペース(“:”)を使用して、各キーと値のペアをマークします。コメントは、オクトソープ(「ハッシュ」、「シャープ」、「ポンド」、または「番号記号」-「#」とも呼ばれます)で始まります。

于 2012-11-22T06:02:17.653 に答える
1

まだ修正していない:
他のバグがいくつかありましたが、これでうまくいった後、後続のスペースをすべて削除してみてください。app.yaml

于 2013-01-12T21:20:27.517 に答える
1

を構成するときapp.yamlは、すべてのパラメーターをその値からスペースで区切る必要があります (したがって、 などにするapplication:web2py必要がありますapplication: web2py)。コロンの後ろ (特にこの : の後) にスペースを挿入してみてurl:/(?P<a>.+?)/static/(?P<b>.+)、エラーが修正されるかどうかを確認してください。

于 2012-11-22T05:38:00.397 に答える
0

Google GAE が YAML ファイルを解釈するために何を使用するかはわかりませんが、PyYAML では\static_files.

これはたまたまファイルの 9 行目でもあります (空行を除いて)。したがって、これらの値をエスケープすることから始めます。

http://yaml-online-parser.appspot.com/\1は例を解析するだけですが、テキストエリアから PyYAML にデータを渡す前に、黙って '\2' に変換しているように見えることに注意してください。

于 2014-11-24T12:14:04.820 に答える