Bir web uygulaması yüklenmiş ve ayarlanmış olup olmadığını belirlemek için?

4 Cevap php

I am not sure to be enough be by my question... Well i'm developping a CMS in PHP with Zend Framework. I would like to have a nice web gui to install and set up the application after unpacked it somewhere... Some CMS or whatever the application is, offer this way to do by simply entering an 'install url' like 'http://localhost/app/install'

Ben aynı yapmak istiyorum ama herhangi bir kullanıcı kurmak için izin vermek istemiyorum, bu yüzden uygulama kurmak ya da hiç olup olmadığını belirlemek için bir yol arıyorum.

Inspired by the pid file in the unix world, i though to do the same with an InstallState file. Writing any boolean value inside and then check could be an idea..

Bu konuda ne düşünüyorsunuz? Daha iyi fikirler var mı?

4 Cevap

Ben Sam152 cevabını upvoted rağmen, bazı daha fazla açıklama (ki sadece gerçekten bir açıklama sığmadı) vermek ihtiyacı hissettim. Ben aşağıdaki gibi bu durumlar için kullanabileceğiniz bir uygulamadır:

  1. Kullanıcı yükleyiciyi çalıştırın.
  2. Başarı ile tamamlayan, (birçok uygulama sadece içinde hiçbir şey, bir 'installer.lock' dosyası oluşturmak) kilit dosyasının çeşit üretmek. Bu dosyanın varlığı should stop the user running the installer again.
  3. entire installation directory sunucudan kaldırılıncaya kadar (hatta başarılı bir kurulum sonrasında) yürütülmesini ana senaryoyu engelleyin.

Bu iki düzeyde güvence sağlar. Bu (ki ya da uygulama için bir sorun olmayabilir) tekrar yükleyici olmak çalıştırmak engeller ve çalıştırılan ürün engeller. Sen zaten başarıyla yüklemek, tekrar yüklemeniz gerekmez compleed ettik kullanıcı anlatmak için kilitleme dosyanın varlığını kullanmak ve dizini kaldırmak gerektiğini edebilirsiniz.

, Basit, güvenli, sınıflandırılmaktadır. :)

Sen yükleme tamamlandıktan sonra dosya kendisini silmek zorunda yerde ya da sadece bir değer veritabanı yazabilirsiniz. Bu tamamlandıktan sonra yazılımı bir çok yükleme / dosyayı silmek için kullanıcı isteyin. Bu zorlamak için, install dizin olup olmadığını kontrol edin ve senaryonun kalanı çalıştırmadan önce yönetici silmek yapabiliriz.

Bu kadar veritabanı giriş bilgileri gibi şeyler saklamak ve nerede şu anda web uygulamaları bir sürü yerde bir yapılandırma gibi dosya var. Bir taze yüklü başvurusu üzerine kod config dosyasında ya da bazı değişkenlerin varlığını kontrol olabilir ve mevcut değilse, yüklemek script yönlendirmek.

Config dosyası varsa aynı komut sonra işe reddetme olabilir. Ayrıca kurduktan sonra install dosyası / klasör silmek için kullanıcı anlatmak için yaygın bir uygulamadır. Hatta bazıları dosyaları varsa hiç çalışmıyor tarafından silinmesini zorlamak için uzunlukları gidin.

Orada ne istediğinizi yapmak için başka yolları vardır, ama bu açık kaynak web uygulamaları arasında en yaygın olarak bulundu.

Örnek olarak Drupal kurulum komut dosyası kullanarak ...

if ( ! config_file_exists()) {
    tell_user_to_write_config_file();
} elseif ( ! can_connect_to_db()) {
    tell_user_to_fix_config_file();
} elseif ( ! check_db_if_installed() ) {
    do_install_stuff();
} else {
    tell_user_system_installed()
}

Drupal durumunda, (variable) adı verilen bir ayar tablosunda bir satırın varlığı için kontrol install_task - Açıkçası, sihirli do_install_stuff() olur. Sürece size ilk sistem kurulumu yaptığınızda yazılı son şey olduğu gibi, gitmek iyi olurdu.