Saya membuat profil instalasi untuk proyek internal perusahaan saya saat ini.
Selama proses instalasi, salah satu modul khusus macet selama init()
, karena mencoba menggunakan satu variabel global yang didefinisikan settings.php
(itulah perilaku default modul saat ini)
Dengan menggunakan system_form_install_settings_form_alter()
saya mengubah formulir pengaturan, dengan menambahkan satu input bidang teks untuk input pengguna, dan pada saat mengirimkan nilai ditambahkan ke settings.php
, tetapi settings.php
ditulis ulang sebelum instalasi profil dimulai.
Apakah ada cara untuk mencegah pembersihan settings.php
oleh proses instalasi?
distributions
configuration-management
Paulo Gomes
sumber
sumber
Jawaban:
Anda mungkin merasa lebih mudah menggunakan a
settings.common.php
Seringkali selama proyek tim, kami memiliki lokal
settings.php
dengan kredensial db dll. Dansettings.common.php
dengan pengaturan yang umum untuk lingkungan pemasangan dan penyebaran.Anda dapat menambahkan
settings.common.php
dengan baris sertakan / minta masuksettings.php
dan kemudian menulis sesuai kebutuhan saat menginstal.
sumber
Jawaban saya tergantung pada server yang menggunakan Apache, tetapi saya berasumsi server web lain dapat melakukannya juga.
Di konfigurasi virtualhost Anda, Anda dapat mengatur semua variabel untuk lingkungan Anda:
Dan di file settings.php Anda:
Anda dapat mengatur variabel lain dengan cara ini juga.
Jika Anda khawatir tentang array $ _SERVER masuk ke tangan yang salah, Anda dapat menghapus semua variabel penting di bagian bawah settings.php:
Ini adalah bagaimana kami melakukannya di kantor saya untuk memindahkan situs antara lingkungan pengembang kami, pementasan dan bahkan produksi.
sumber