Kurulum Talimatları
"Başlangıç kontrolcüsü tanımlayarak bu kontrolcüde yer alan kodların diğer tüm kontrolcüler için geçerli olmasını sağlayabilirsiniz."
ZN Framework neredeyse hiç bir ayar gerektirmeden kurulur. Dağıtım türüne göre doğrudan indirme veya composer ile kurulum gibi seçenekler de mevcuttur. Kurulum öncesi gereksinimlere bakmayı sonrası ise sunucu ve yetki yapılandırmalarını kontrol etmeyi unutmayın.
# Bölüm Başlıkları
# Gereksinimler
# Dağıtıma Göre Kurulumlar# Fullpack Edition
# Original Edition
# Single Edition
# Custom Edition
# Light Edition
# Shared Edition
# Devtools
# Default Project
# Shared Extension# Linux
# Docker Kurulum
# Ayağa Kaldırma
# Port Değiştirme
# Yeniden Başlatma
# Docker Compose Komutları
# Gereksinimler
● PHP en az 7.0.0 sürümü olmalıdır.
● Sunucu yazılımı apache ise AllowOverride değeriNoneyerine All ayarlanmalı ve mod_rewrite özelliği açık olmalıdır.
● MB String eklentisinin yüklü olması gerekmektedir.
# Dağıtıma Göre Kurulumlar
Aşağıda kullanım amacına göre farklı dağıtımlar mevcuttur. Composer ile kurulum gerektiren dağıtımlar için öncelikle composerin sunucunuzda yüklü olması gerekmektedir. Eğer yüklü değilse kurmak için tıklayınız.
Bu sürüm ZN Framework'e ait tüm kütüphaneleri içerecek şekilde
composerkullanımı gerektirmeden kurulur. Daha çok host üzerinde çalışacaklar için tavsiye edilir. Güncelleme işlemi composer yerine Devtools ve Konsol uygulaması üzerinden yürütülür.
Kurulum
↓ İndir
Güncelleme
Bu sürümde güncelleme konsol veya Devtools uygulaması üzerinden yürütülür. Devtools`un aşağıdaki menüsünden güncelleme yapılır.
URL: yoursite.com/Devtools/system/info
ZN Framework'ün orjinal sürümüdür. Bu sürüm beraberinde diğer paketleri de kurar.
Kurulum
> composer create-project znframework/znframework
Güncelleme
> composer update
Bu sürüm ZN Framework`ün orjinal sürümünde yer alan Projects/ dizine ait herhangi bir projenin dizin yapısına sahiptir. Aynı çatı altında birden fazla proje yer almayacaksa daha sade dizin yapısı nedeniyle bu sürümün kullanılması tercih edilebilir.
Kurulum
> composer create-project znframework/single-edition
Güncelleme
> composer update
Kendi kod çerçevenizi oluşturabilmenize olanak sağlayan sürümdür. Bu sürümde dizin yapısını kendinize göre tasarlarsınız.
Kurulum
> composer create-project znframework/custom-edition
Güncelleme
> composer update
Kullanım
Kullanımı için tıklayınız.
ZN Framework'ün custom-edition dağıtımından harmanlanmış basit ve rahat kullanım sunan özel bir hafif sürümdür.
Kurulum
> composer create-project znframework/light-edition
Güncelleme
> composer update
ZN Framework'ün custom-edition dağıtımı ve shared-extension reposundan harmanlanmış akılcı ve güvenli kullanım sunan ve ortak paylaşım dizini içeren sürümüdür.
Kurulum
> composer create-project znframework/shared-edition
Yapılandırma
Apache'de DocumentRoot, Nginx'te ise root değeri aşağıdaki gibi olmalıdır.
/var/www/html/public
Güncelleme
> composer update
Devtools Framework araçlarını daha iyi kullanabilmenize imkan sağlayan çeşitli araçları içeren bir panel sunar. Bu panel üzerinden çatınızı daha iyi yönetmenize yardımcı olur.
Devtools sadece ZN OE ve ZN FE dağıtımlarında kullanılabilir. Kurulum bu dağıtımların içinde yer alan Projects/ dizini içerisine yapılmalıdır.
Kurulum
> composer create-project znframework/developer-tools Devtools
Erişim
Kurulumdan sonra Devtools erişmek için site.com/Devtools ile erişim sağlayabilirsiniz. Erişimi local üzerinde gerçekleştiriyorsanız doğrudan panele giriş yapabilirsiniz. Sunucu üzerinden erişim halinde kullanıcı adı ve şifre bilgisi isteyecektir. Bu durumda kullanıcı adı ve şifre belirlemek için;
Dosya: Devtools/Config/Dashboard.php'users' => ['username' => 'password']
tanımlaması yapılması yeterlidir.
Çoklu proje geliştirmeye dayalı EIP modelini kullanan ZN OE ve ZN FE dağıtımları için yeni bir proje açmak için kullanılır.
Kurulum bu dağıtımların içinde yer alan Projects/ dizini içerisine yapılmalıdır.
Kurulum
> composer create-project znframework/default-project NewProjectName
Dizin ve dosya erişim güvenliği için çalışma dizinini bir alt klasör olarak ayarlamak için kullanılır. Bu dizin genel olarak public/ olarak isimlendirilir. Bu reponun kurulumunu ZN Framework'ün kurulu olduğu dizine yapılır. Bu kurulumdan sonra bir kaç sonraki başlıkta anlatılan server yapılandırması bölümünde bulunan DocumentRoot satırı /var/www/html/public olarak düzenlenmelidir. Dizin adı tercihinize göre değiştirilebilir.
Kurulum
> composer create-project znframework/shared-extension public
# Yetki Yapılandırmaları
ZN Framework`te otomatik olarak dosya yazma işlemleri kullanıldığından dolayı bazı işletim sistemlerinde yetki sorunu ile karşılaşılabilmektedir. Aşağıda hangi işletim sistemi için bu ayarların yapılabileceği gösterilmiştir.
Kurulum sonrası yetki sorunu yaşanmaması için ZN Framework`te dosya ve dizinlere yetki verilmesi gerekmektedir.
$ chown apache:apache -R /var/www/html/{project-directory}
$ find /var/www/html/{project-directory} -type d -exec chmod 0755 {} \;
$ find /var/www/html/{project-directory} -type f -exec chmod 0644 {} \;
$ chmod g+w -R /var/www/html/{project-directory}
# Server Yapılandırmaları
Aşağıda hem apache hem de nginx için kullanılabilir yapılandırma içerikleri verilmiştir.
Apache için genellikle /etc/apache/sites-available/000-default.conf yolunda bulunan yapılandırma dosyasının içeriği aşağıdaki gibi olmalıdır.
<VirtualHost *:80> ServerAdmin webmaster@localhost DocumentRoot /var/www/html <Directory /var/www/html> Options FollowSymLinks MultiViews AllowOverride All Require all granted </Directory> ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost>
Nginx için genellikle /etc/nginx/sites-available/default yolunda bulunan yapılandırma dosyasının içeriği aşağıdaki gibi olmalıdır.
server { listen 80 default_server; root /var/www/html; index zeroneed.php; error_page 403 /zeroneed.php; location / { try_files $uri /zeroneed.php?$args; proxy_pass http://127.0.0.1:80; } location ~ zeroneed.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/var/run/php/php7.0-fpm.sock; } location ~ "\/Resources\/\w+\/.*?\.[a-zA-Z0-9]{2,4}$" { try_files $uri /".*?\/Resources\/"; } }
# Docker Çalışma Ortamı [5.9.0]
ZN Framework'ü işletim sisteminize indirikten sonra ZN Framework'ün 5.9.0 ve sonrası sürümleri içerisinde docker ile çalışma ortamı oluşturmak için gerekli dosyaları barındıracak şekilde gelmektedir. Docker ile çalışma ortamının kurulumu için işletim sisteminizde docker'in kurulu olması gerekmektedir.
Docker ile kurulum yapmanız durumunda işletim sisteminden bağımsız herhangi bir server yapılandırması veya ekstra kurulumlarla uğraşmadan proje geliştirmeye başlayacak ortamı oluşturabilirsiniz. Docker ZN içerisinde yer alan Dockerfile dosyası aracılığı ile ZN Framework'ün çalışması için ideal olan gerekli tüm paket ve eklentileri kurmaktadır.
İşletim sistemine göre Docker kurmak için tıklayınız.
Çalışma ortamı için gerekli yazımların kurulumu için ZN Framework'ün kurulu olduğu dizin seviyesinde aşağıdaki konsol komutunu kullanın.
> composer build
Projeye Erişim
Docker yapılandırmasında 8080 portu ön tanımlı ayarlı olduğu için projeye erişmek için URL bilgisi aşağıdaki gibi olmalıdır.
URL: localhost:8080/ veya 127.0.0.1:8080/Artık çalışma ortamınız hazır.
Ön tanımlı olarak 8080 portu üzerinden erişim sağlanır. Bu portu değiştirmek için docker-compose.yml dosyasında yer alan ports:8080 değerini değiştirdikten sonra değişiklikleri uygulamak için aşağıdaki komutu kullanın.
> composer apply
Çalışma ortamını tamamen durdurup yeniden başlatmak için aşağıdaki komutu kullanabilirsiniz.
> composer restart
ZN Framework'ün içinde bulunan composer.json dosyasında ön tanımlı docker komutları bulunmaktadır.
composer build | ZN Framework'ün docker ortamında kurulumunu gerçekleştirir. |
composer restart | Tüm docker servislerini kapatıp yeniden başlatır. |
composer apply | Dockerfile ve docker-compose.yml dosyasında değişikliklerin uygulanıp gerekli servislerin yeniden başlatılmasını sağlar. |
composer start | Çalışmayan servislerin yeniden çalıştırılmasını sağlar. |
composer down | Servisleri durdurur |
composer up | Servisleri baştan çalıştırır. |
Diğer komutları için aşağıdaki linki takip edebilirsiniz.
# Sorun Giderme
Kurulumdan sonra farklı bir sorunla karşılaşırsanız sorun giderme sayfasından mevcut çözümlere ulaşabilirsiniz.