我有一个PHP项目,其中包含约30个文件和4个文件夹。 是否可以将其上传到App Engine。我的意思是,当我配置YAML时,它仅上传index.php而没有其他内容。
我应该以某种方式将文件上传到GS并使用YAML指向那些文件吗?
答案 0 :(得分:0)
好吧,答案是“是”,您必须将您的App指向要存储所有文件的GS。
这是一个示例YAML文件,它指向包含PHP文件的子目录。
runtime: php
# api_version: 1
env: flex
runtime_config:
document_root: .
env_variables:
APP_LOG: errorlog
GOOGLE_STORAGE_BUCKET: "URL.appspot.com/public_html"
MYSQL_USER: "NAME"
MYSQL_PASSWORD: "USER"
MYSQL_DSN: "mysql:dbname=DBNAME;unix_socket=/cloudsql/LOCATION"
beta_settings:
cloud_sql_instances: "LOCATION"
答案 1 :(得分:0)
静态内容可以从Google Cloud Storage(GCS)或直接从GAE应用程序环境提供。 PHP文件应与您的应用程序一起上传,而不是上传到GCS。
GAE Flexible documentation包括对每种方法的讨论,以及有关开始提供 GCS 中的静态内容的指南。
在标准环境中,您必须define handlers将提供您的静态内容,并将其映射到项目目录结构中保存文件的目录。例如:
handlers:
# All URLs beginning with /stylesheets are treated as paths to
# static files in the stylesheets/ directory.
- url: /stylesheets
static_dir: stylesheets
除非包含在.gcloudignore文件中,否则将上传应用程序目录中的所有PHP文件。默认情况下,vendor/
文件夹is included there被忽略,但这是因为假定Composer在部署后将安装必要的软件包。
在灵活的环境中,应用程序可以为document_root(在app.yaml中指定)下的所有内容提供服务。除非在app.yaml的skip_files
元素下指定,否则应用程序目录中的PHP文件将被上传到应用程序环境。