Невозможно контролировать запросы статических файлов в Google App Engine - PullRequest
0 голосов
/ 18 мая 2010

Мое простое приложение GAE не перенаправляет в каталог / static для запросов, когда url имеет несколько уровней.

Структура Dir:

 /app/static/css/main.css

App:

У меня есть два обработчика, один для / app и один для / app / new

app.yaml:

handlers:

- url: /static
  static_dir: static

- url: /app/static/(.*)
  static_dir: static\1

- url: /app/.*
  script: app.py
  login: required

HTML:

Описание: Когда страница загружается из / app HTTP-запрос для main.css успешен

 GET /static/css/main.css

Но когда страница загружается из / app / new, я вижу следующий запрос:

GET /app/static/css/main.cs

Именно тогда я попытался добавить /app/static/(.*) в app.yaml, но это не дает никакого эффекта.

1 Ответ

0 голосов
/ 19 мая 2010

В HTML внутренняя ссылка, начинающаяся с "/", является абсолютной ссылкой, ссылка, начинающаяся без "/", является относительной ссылкой. Так что если вы запрашиваете:

/ приложение

и имеют относительную ссылку:

статический / CSS / main.css

запрос становится:

/ статический / CSS / main.css

относительная ссылка использует "/" в "/ app", поскольку часть "app" считается страницей, а "/" - каталогом.

Если вы запрашиваете:

/ приложение / новый

Ваш запрос становится:

/ приложение / статический / CSS / main.css

относительная ссылка использует "/ app /", потому что "/ app /" считается каталогом, а "new" считается страницей.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...