Kurulum Talimatları


    × Bunları biliyor muydunuz?
"Görünümleri 'Views/controllerName/methodName.php' formunda tanımlayarak kontrolcüler tarafından otomatik yüklenmesini 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 indirebileceğiniz 4 farklı dağıtım 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 bu dağıtımda dahili gelmektedir.  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. Bu dağıtım sadece çekirdek yapıyı beraberinde kurar. Diğer paketlerin kullanımı için composer ile yüklenmesi gerekmektedir.

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. Bir nevi Single Edition sürümünün özelleştirilebilen halidir.

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 özünden harmanlanmış, rasyonel 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 özünden harmanlayan, akılcı ve rahat bir kullanım sunan ve paylaşılan bir çalışma 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 /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

Local`de kurulum sonrası yetki sorunu yaşandığı için ZN Framework`te bazı dosya ve dizinlere yetki verilmesi gerekmektedir. Kolaylık olması açısından aşağıdaki komutu tek bir sefer çalıştırmanız yeterlidir.

$ sudo chmod -R 777 /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 Indexes 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ı (ZN >= 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ı

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.