Kurulum Talimatları


    × Bunları biliyor muydunuz?
"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

# Yetki Yapılandırmaları

# Linux

# Server Yapılandırmaları

# Apache
# Nginx

# Docker Çalışma Ortamı

# Docker Kurulum
# Ayağa Kaldırma
# Port Değiştirme
# Yeniden Başlatma
# Docker Compose Komutları

# Sorun Giderme

 

 

# Gereksinimler


PHP en az 7.0.0 sürümü olmalıdır.
Sunucu yazılımı apache ise AllowOverride değeri None yerine 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.

Fullpack Edition

Bu sürüm ZN Framework'e ait tüm kütüphaneleri içerecek şekilde composer kullanı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
Original Edition

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
Single Edition

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
Custom Edition

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.

Light Edition

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
Shared Edition

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

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.

Default Project

Ç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
Shared Extension

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.

Linux

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

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

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.

Docker Kurulum

İşletim sistemine göre Docker kurmak için tıklayınız

Ayağa Kaldırma

Ç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.

Port Değiştirme

Ö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
Yeniden Başlatma

Çalışma ortamını tamamen durdurup yeniden başlatmak için aşağıdaki komutu kullanabilirsiniz.

> composer restart
Docker Compose Komutları

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.

https://docs.docker.com/compose/reference/overview/

 

 

# Sorun Giderme


Kurulumdan sonra farklı bir sorunla karşılaşırsanız sorun giderme sayfasından mevcut çözümlere ulaşabilirsiniz.