Linux tarafından barındırılan web uygulaması için config dosyalarının en iyi yeri?


1

Programcıyım ve yönetici olmadığım için umarım bana yardımcı olabilirsiniz:

Şu anda, kullanıcının bunları uygulama üzerinden (web arayüzünde) düzenleyebileceği (XML) config dosyalarını kullanan bir web uygulaması yazıyorum.
Bu nedenle, uygulamanın okuma ve yazma izinlerine ihtiyacı var.

Uygulama paketi sistemde güncellendiğinde ve elbette eski sürümün zaten kullandığı önceden yapılandırılmış config dosyalarını kullanmalıdır. (Konfigürasyon dosyalarının formatı versiyondan versiyona biraz değişebileceğinden güncelleme işlemi konfigürasyon dosyalarını da değiştirebilir / güncelleyebilir)

Peki bu dosyalar için resmi (Debian) ve son derece resmi (LSB / FHS) yeri nerede?

  • /etc/myWebApp/config/ (bir bağlantı ile WEBROOT/myWebApp/config -> /etc/myWebApp/config/ )?
  • WEBROOT/myWebApp/config/?
  • başka bir yer?

Güncelleme işlemi nasıl yapılmalı? Eski yapılandırma dosyalarını yeniden adlandırmanız yeterli config_*.xml.160207 ve içeriklerini yeni biçime çevir config_*.xml? Veya her sürüm için bir yapılandırma dizini kullanmak?
Paketin düşürülmesi (örneğin, beta test edicileri için bir PPA oluşturulduğunda ve kullanıcı beta testinden ayrılmak ve kararlı sürümlere geri dönmek istediğinde) nasıl kullanılmalıdır? Otomatik ters isim değiştirme mi, yoksa kendisini düzeltmek için kullanıcıya mı bıraktınız?

Not: Bu durumda web uygulamasının yöneticisi bir "kullanıcı" dır. Bu yüzden config dosyalarını değiştirebilecek güce sahip. (Ancak pek fazla Linux gerekli değildir ve genellikle kök olmadığını bilir). "Son kullanıcı", uygulamanın gerçek kullanıcısı ve yapılandırılmış içeriği olacaktır.

Yanıtlar:


2

Bu senin projene bağlı. Yapılandırma dosyaları içinde olabilir. /etc/, /var/www, /opt, ama içinde olmamalılar /usr/, /sys/, ...

Yapılandırma dosyaları / etc içindeyse, paket yöneticisi size güncelleme sırasında ne yapacağınızı soracaktır.

Genellikle paketten yapılandırma dosyaları postfix vardır .sample (Örneğin. /etc/project/config.xml.sample ). Ve kullanıcı bunu kopyalamalıdır config.xml ve özelleştirin. Bu şekilde güncelleme sırasında yeniden yazılmayacaklar.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.