【发布时间】:2017-05-28 15:16:59
【问题描述】:
我有一个 nodejs 后端和一个 reactjs 前端。我正在使用 gcloud flex 环境(应用程序引擎)并希望使用 CDN 提供所有前端文件。我不希望请求触及我的 nodejs 服务器。我无法配置我的项目 app.yaml 来做同样的事情。
我怀疑我的请求没有从 CDN 提供,因为如果我在我的 nodejs 代码中注释以下行,我将无法再访问 index.html。
app.use('/', express.static(path.resolve('./frontend/dist')));
下面是 YAML 文件。
handlers:
- url: /(.*\.html)
mime_type: text/html
static_files: frontend/dist/\1
upload: frontend/dist/(.*\.html)
- url: /styles/(.*\.css)
mime_type: text/css
static_files: frontend/dist/styles/\1
upload: frontend/dist/styles/(.*\.css)
- url: /scripts/(.*\.js)
mime_type: text/javascript
static_files: frontend/dist/scripts/\1
upload: frontend/dist/scripts/(.*\.js)
- url: /images/(.*\.(bmp|gif|ico|jpeg|jpg|png))
static_files: frontend/dist/images/\1
upload: frontend/dist/images/(.*\.(bmp|gif|ico|jpeg|jpg|png))
- url: /
static_files: frontend/dist/index.html
upload: frontend/dist/index.html
- url: /.*
script: IGNORED
secure: always
有没有办法配置应用引擎,使静态文件请求不响应我的 nodejs 后端服务器?
谢谢
【问题讨论】:
-
那么这是前端还是后端
.yaml文件?还要描述您的应用程序目录结构。 -
这是用于将我的代码上传到 app-engine 的 .yaml。摘录显示了代码的处理程序部分。静态文件在
/frontend/dist 文件夹中创建(并且具有名称为 images/、scripts/ 和 styles/ 的子文件夹)。如果我能提供更多信息,请告诉我。谢谢 -
没关系,我在想标准的环境风格......
-
是的,这是 flex env - 我没有意识到我隐瞒了有用的信息。
标签: node.js google-app-engine gcloud