0

TYPO3 バージョン 6.1.5 では、typo3conf の構成を 3 つの部分に分割したいと思います。

  1. バージョン管理下で、install-tool によって生成された 1 つの部分。
  2. バージョン管理下にある、手動で管理された 1 つのパーツ。
  3. バージョン管理されていない、サーバー固有のものを含む、手動で管理された 1 つの部分。データベース資格情報などを含みます。

私はこのようにそれをやろうとしました:

  1. LocalConfiguration.php を使用して行われます。
  2. は、AdditionalConfiguration.php を使用して行われます
  3. これは、AdditionalConfiguration.php に含まれる追加のファイルによって行われます。

ファイルが次の順序で評価されるため、これは機能しません。

  1. LocalConfiguration.php
  2. AddtitionalConfiguration.php
  3. LocalConfiguration.php

したがって、サーバー固有のファイル(およびAdditionalConfiguration.php)からの変更は、LocalConfiguration.phpのものによって単純に上書きされます。

このようなことを回避する方法はありますか?

4

2 に答える 2

1

まず、:LocalConfiguration.phpファイルに手動で変更を適用しないでください。インストール ツール、拡張機能マネージャーなどでの各操作の後に削除されるためです。

カスタム構成を追加するAddtitionalConfiguration.phpには、変更されていないファイルを使用する必要があります (おそらく使用しているときにわかるように)。この追加の conf では、値を上書きするために「古い」構文を使用する必要があります。

<?php
$GLOBALS['TYPO3_CONF_VARS']['DB']['database']='some_db_loc';
$GLOBALS['TYPO3_CONF_VARS']['DB']['host']='localhost';
$GLOBALS['TYPO3_CONF_VARS']['DB']['username']='jost';
$GLOBALS['TYPO3_CONF_VARS']['DB']['password']='yourpass';

最後に、追加の conf の最後で common を使用して、include()これらの値を再度上書きできる次の PHP ファイルを含めます。

@include('jost_localconf_dont_commit.php');

少なくともTYPO3版では。6.1.1 このシナリオは魔法のように機能します。

編集:追加の構成でプロパティにアクセスするに従って、 Viktorの回答も見てください。

ところで: なぜコミットする必要があるのか​​ よくわかりませんAdditionalConfiguration.php。私見では、gitでは無視する必要があり、すべての環境で、この環境に典型的なローカルデータでこのファイルを埋める必要があります。メイン (本番) インスタンスは、その構成全体を保持する必要がありますLocalConfiguration.php

于 2013-09-16T15:29:20.027 に答える