sioweb/apply_environment

设置环境数据

安装: 487

依赖: 3

建议者: 0

安全: 0

星标: 1

关注者: 1

分支: 0

开放性问题: 0

类型:contao-bundle

2.4.6 2021-10-04 07:06 UTC

README

每个环境(生产、开发、本地等)可能需要不同的设置。最常见的是域名和HTTPS设置在起点受到的影响。

示例

  • 生产: HTTPS 是 / www.domain.tld
  • 开发: HTTPS 否 / dev.domain.tld
  • 本地主机: HTTPS 否 / domain.localhost

设置

在目录 /app/config/ 中必须创建一个名为 environments.yml 的文件。对于生产、开发和本地主机,文件结构如下

apply_environments:
	environments:
		productive:
			prod: true
			short: intern
			title: Produktiv
		development:
			short: dev
			title: Development
		localhost:
			title: Localhost

选项

通过控制台设置环境

对于自动构建,可能需要通过控制台安装环境。在 Contao 根目录中,可以在控制台输入以下内容

vendor/bin/contao-console --env=YOUR_ENVIRONMENT sioweb:environment

在某些系统上,PHP 没有作为别名设置,那么必须在命令之前写入此内容

/path/to/php vendor/bin/contao-console --env=YOUR_ENVIRONMENT sioweb:environment

Composer 安装/更新

当前环境也可以通过 composer updatecomposer install 直接安装

{
    "scripts": {
	"post-install-cmd": [
	    "Contao\\ManagerBundle\\Composer\\ScriptHandler::initializeApplication",
	    "Sioweb\\ApplyEnvironment\\Composer\\ApplyEnvironment::setup"
	],
	"post-update-cmd": [
	    "Contao\\ManagerBundle\\Composer\\ScriptHandler::initializeApplication",
	    "Sioweb\\ApplyEnvironment\\Composer\\ApplyEnvironment::setup"
	]
    },
}

.env

为了正确安装环境,必须将环境信息放在 Contao 根目录下的 .env 文件中

APPLY_ENVIRONMENT='localhost'

请用您希望的环境代替 localhost,这是很重要的,以确保使用正确的数据库。

MYSQL_USER 未找到

如果数据库如下定义在文件 /app/config/parameters_XXX.yml 中,可能会发生控制台无法访问 ENV 数据的情况

# This file has been auto-generated during installation
parameters:
    database_user: "%env(MYSQL_USER)%"
    database_password: "%env(MYSQL_PASSWORD)%"
    database_name: "%env(MYSQL_DATABASE)%"

在这种情况下,必须首先向控制台传递数据

export MYSQL_DATABASE="your_database"
export MYSQL_USER="your_username"
export MYSQL_PASSWORD="your_password"

如何保存设置?

在 Contao 后端的所有地方,都会在所有小部件周围扩展一个小型不可见圆圈。当鼠标移至输入字段上时,圆圈将变为可见。通过点击,将打开一个菜单,其中包含可能的 环境/环境。通过点击一个环境,将把条目存储在输入字段中。

注意:不需要提交表单即可保存条目。

安装环境

现在在系统维护中有一个新的输入字段。如果正确地在 environments.yml 中记录了 short 设置,则当前环境设置将在此处自动选择。建议在 .htaccess 中将 dev/localhost 域名相应地自动重定向到 app_dev.phpapp_localhost.php

通过提交环境,现在将自动安装所选环境的所有保存数据。

数据存储在哪里?

数据存储在 /app/environments/ 中。