0

私は最近、Google App Engine を使用して父のためにウェブサイトを展開しました。

奇妙なことに、ギャラリーにいくつかの画像が見つかり、一部は 404 で返されます。管理ダッシュボードで使用率を調べたところ、「コードと静的ファイル ストレージ」が 17% しかないことがわかりました。

ディレクトリを変更して再デプロイしようとしましたが、2 つ目のアプリケーション (this-site-1 から this-site-2 へ) も作成しました。それが単なるキャッシュである場合に備えて、約 1 時間待ちましたが、どれもこれらが問題のようです。

私は Google App Engine を初めて使用します。これは、Google App Engine を使用して展開した最初の Web サイトです。

app.yaml

application: this-site-2
version: 1
runtime: python
threadsafe: true
api_version: 1

handlers:
- url: /robots.txt
  static_files: static/robots.txt
  upload: static/robots.txt

- url: /css
  static_dir: static/css

- url: /img
  static_dir: static/img

- url: /js
  static_dir: static/js

- url: /.*
  script: main.py

編集:それが問題だった場合に備えて、Pythonを2.7に更新しましたが、これを行うことで行いました:

application: this-site-2
version: 1
runtime: python27
threadsafe: true
api_version: 1

handlers:
- url: /robots.txt
  static_files: static/robots.txt
  upload: static/robots.txt

- url: /css
  static_dir: static/css

- url: /img
  static_dir: static/img

- url: /js
  static_dir: static/js

- url: /.*
  script: main.app # a WSGI application in the main module's global scope

libraries:
- name: webapp2
  version: "2.5.1"

- name: django
  version: "1.2"

skip_files:
- ^(.*/)?app\.yaml
- ^(.*/)?app\.yml
- ^(.*/)?index\.yaml
- ^(.*/)?index\.yml
- ^(.*/)?#.*#
- ^(.*/)?.*~
- ^(.*/)?.*\.py[co]
- ^(.*/)?.*/RCS/.*
- ^(.*/)?\..*
- ^(.*/)?.*\.bak$
- ^(.*/)?.*\.less$

次にデプロイすると、コンソールはデプロイが成功したことを示し、インデックスを更新していて、コード 0 で終了しました。次に、Web サイトにアクセスしようとすると、500 server error. そのため、ダウングレードして python 2.5 に戻しましたが、サイトは問題ありません。

4

3 に答える 3

3

画像の URL ハンドラが必要以上に複雑になっていると思います。私は提案します:

  1. すべての静的コンテンツ (画像、Javascript、CSS) を、static画像、Javascript、および CSS のサブフォルダーを含む、または同様のフォルダーに配置します。
  2. 現在のイメージ ハンドラーの代わりに、次のハンドラーを使用します。

    handlers:
    - url: /images
      static_dir: static/images
    

フォルダ内のすべてのファイルはstatic/images、 url でアクセスできるようになりますyourwebsite.com/images/subpath/image.jpg

詳細については、こちらを参照してapp.yamlください。

于 2013-09-10T08:19:59.877 に答える