ServBay Dizin Yapısı
ServBay'in dizin yapısı basittir ve eğer Linux/Unix sistem bilgisine sahipseniz, iki yapı arasında büyük benzerlikler bulacaksınız.
Tipik bir ServBay dizin yapısı aşağıdaki gibidir:
ServBay
|____backup
| |____config
| |____hosts
|____bin
|____data
| |____servbay
|____db
| |____redis
|____etc
|____logs
|____package
| |____bin
| |____common
| | |____imap-uw
| | |____include
| | |____lib
| | |____libexec
| | |____openssl
| | |____share
| |____etc
| | |____caddy
| | |____dnsmasq
| | |____mariadb
| | |____openldap
| | |____php
| | |____redis
| | |____scws
| |____mariadb
| | |____x.x
| |____node
| | |____xx
| |____php
| | |____x.x
| |____sbin
| |____var
| | |____log
| | |____run
|____sbin
|____script
|____ssl
| |____caddy
|____tmp
|____www
| |____servbay
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
Şimdi her dizinin kullanımını ayrıntılı bir şekilde açıklayacağız.
Ana Dizin
ServBay'in ana dizini /Applications/ServBay
altında bulunur ve tüm dosyalar burada saklanır.
Yedeklemek gerektiğinde (örneğin Time Machine veya başka bir yedekleme yöntemi kullanarak), bu dizinin tamamını yedekleyin.
Web Sitesi Kök Dizin
Web sitesinin kök dizini /Applications/ServBay/www
konumundadır. Her ana bilgisayar için ayrı bir klasör oluşturmanız önerilir, böylece yapı düzenli ve yönetimi kolay olur.
Örneğin:
/Applications/ServBay/www
|____com
| |____servbay
| | |____web # web.servbay.com
| | |____support # support.servbay.com
| | |____api # api.servbay.com
|____local
| |____sam
| | |____www # www.sam.local
| |____servbay
| | |____new # new.servbay.local
2
3
4
5
6
7
8
9
10
11
Konfigürasyon Dosyası Dizin
Konfigürasyon dosyası dizini /Applications/ServBay/etc
konumunda olup, bu bir sembolik bağdır. Gerçek dosyalar /Applications/ServBay/package/etc
altında saklanır.
Genelde doğrudan /Applications/ServBay/etc
kullanabilirsiniz.
Aşağıda yaygın yazılım paketlerinin yapılandırma dosyası örnekleri verilmiştir:
PHP
PHP konfigürasyon dosyası dizini iki katmanlı yapıdadır. etc/php
altında, 5.6
, 7.4
, 8.3
gibi farklı sürümler için dizinler bulunur ve tipik yapı aşağıdaki gibidir:
php
|____5.6
| |____conf.d
|____7.0
| |____conf.d
| |____php-fpm.d
|____7.4
| |____conf.d
| |____php-fpm.d
|____8.3
| |____conf.d
| |____php-fpm.d
|____8.4
| |____conf.d
| |____php-fpm.d
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Her sürüm dizininde php.ini
, php-fpm.conf
, pear.conf
gibi dosyalar bulunur. Bu dosyaları değiştirdikten sonra, en son ayarları uygulamak için ilgili PHP hizmetini yeniden başlatmanız gerekir.
conf.d
dizini PHP genişletme konfigürasyon dizinidir. xdebug.ini
, opcache.ini
, redis.ini
gibi dosyalar içerir. Bu dosyaları düzenleyerek, çeşitli PHP genişletmelerini yükleyebilir, kaldırabilir veya değiştirebilirsiniz. Aynı şekilde, değişikliklerden sonra ilgili PHP hizmetini yeniden başlatmanız gerekir.
Not: Küçük sürüm ile büyük sürüm aynı konfigürasyonu paylaşır. Örneğin, 8.3.3
ile 8.3.5
8.3
konfigürasyon dosyasını kullanır.
MariaDB
MariaDB konfigürasyon dosyası dizini de iki katmanlı yapıdadır. Örneğin, etc/mariadb/11.2
dizininde yalnızca bir my.cnf
dosyası bulunur, değişikliklerden sonra yeniden başlatmanız gerekir. Küçük sürüm ve büyük sürüm aynı konfigürasyonu paylaşır.
Caddy
Not: Caddyfile dosyası ServBay tarafından otomatik olarak oluşturulur, lütfen değiştirmeyin. Değiştirilirse otomatik olarak üzerine yazılacaktır. Özelleştirilmiş ayarlar için doğrudan ServBay'in 'Ana Bilgisayar' özelliğinde konfigürasyon yapın.
dnsmasq
Dizinde iki ana dosya bulunur: dnsmasq.conf
ve domains.conf
. dnsmasq.conf
varsayılan konfigürasyon dosyası, domains.conf
ise otomatik olarak oluşturulan alan adı dosyasıdır.
Not: dnsmasq.conf
ve domains.conf
dosyaları ServBay tarafından otomatik oluşturulur, lütfen değiştirmeyin. Değiştirilirse otomatik olarak üzerine yazılacaktır.
ServBay Ayarları Dizini
/Applications/ServBay/data
Bu dizin, ServBay'in normal çalışması için gerekli olan konfigürasyon dosyalarını ve bilgilerini saklar. Yedekleme yaparken bu dosyaları dikkatle koruyun ve silmeyin veya değiştirmeyin.
Çalıştırılabilir Dosyalar ve Betik Dizini
/Applications/ServBay/bin -> package/bin
/Applications/ServBay/sbin -> package/sbin
/Applications/ServBay/script
2
3
ServBay'in tüm çalıştırılabilir dosyaları bin
ve sbin
dizinlerinde bulunur. PHP ve Node'un çeşitli sürümleri de bu dizinlerde sembolik bağlarla yer alır.
Bu dizinler curl
, openssl
, frpc
gibi birçok yaygın aracı içerir, ayrıca çeşitli PHP ve Node sürümlerini de içerir.
Örneğin, belirli bir betiği çalıştırmak için php-5.6
veya LTS olmayan bir Node.js 15 betiğini çalıştırmak için node-15
kullanabilirsiniz.
Özellikle script
dizinine dikkat edin. Bu dizin, ServBay'in sistem betiklerini içerir. Hizmetleri başlatmak ve durdurmak, veritabanını başlatmak gibi işlemleri yapar. Bu betikleri doğrudan çalıştırabilirsiniz, ancak değiştirmeyin veya silmeyin.
Bu betikler servbayctl
içinde paketlenmiştir. servbayctl
komutunu doğrudan çalıştırarak işlemleri gerçekleştirebilirsiniz, örneğin:
servbayctl start php 7.0
Veritabanı Dosya Dizini
/Applications/ServBay/db
etc
dizini gibi, db
dizini de çok katmanlı bir yapıdır ve her küçük sürüm ile büyük sürüm aynı veritabanını paylaşır. Günlük geliştirme sırasında bu dizini yedeklediğinizden emin olun.
Günlük Dizin
/Applications/ServBay/logs -> package/var/log
ServBay'in tüm günlü kayıtları burada saklanır. PHP ve XDebug hariç, diğer tüm hizmetlerin günlük kayıtları ikincil dizinlerde saklanır.
Web sitesi erişim günlükleri caddy
dizininde saklanır ve alan adlarına göre düzenlenir.
PHP günlükleri ikiye ayrılır: php-fpm.log
(php-fpm tarafından oluşturulan günlükler) ve errors.log
(hata günlükleri). errors.log
yalnızca kod çalıştırılırken ve PHP çerçevesi tarafından yakalanmamış ve saklanmamış hatalar olduğunda oluşturulur.
Örneğin, Laravel
tarafından üretilen hata günlükleri Laravel
çerçevesinin storage/logs/laravel.log
dosyasında saklanırken, WordPress
ve trongate
tarafından üretilen hata günlükleri muhtemelen errors.log
dosyasında bulunur.
Not: Günlük dosyaları oldukça fazla yer kaplayabilir, zamanında temizlemeye dikkat edin.
Yazılım Paketi Dizini
/Applications/ServBay/package
Bu dizin, ServBay'in yüklü tüm yazılım paketlerini içerir. Yapısı paket adı/büyük sürüm/küçük sürüm
şeklindedir. Örneğin, package/php/8.3/8.3.7
.
Yükseltme sonrası artık gerekli olmayan eski sürümleri manuel olarak silebilirsiniz.
Not: Her dizinde current
adında bir sembolik bağ bulunmaktadır ve en son yazılım paketine işaret eder. Silmeyin, aksi takdirde hizmetler başlatılamaz.
SSL Sertifika Dizini
/Applications/ServBay/ssl
Bu dizin, SSL sertifikalarını ve yerel SSL kök sertifikasını (CA) saklar.
Yedek Dizin
/Applications/ServBay/backup
ServBay'in otomatik yedekleme dizini, şu anda yalnızca /etc/hosts
dosyasını yedeklemek için kullanılmaktadır.
Geçici Dosya Dizini
/Applications/ServBay/tmp
Bu dizin, çeşitli hizmetler tarafından çalışan .pid
dosyalarını ve PHP, MariaDB, PostgreSQL soket dosyalarını (php-cgi.sock
, mysql.sock
gibi) saklar.
Günlük geliştirme sırasında, program TCP portu üzerinden php-fpm ve veri tabanına erişimin yanı sıra soket dosyaları üzerinden de php-fpm ve veri tabanına erişebilir. Soket dosyaları genel olarak TCP portlarına göre daha yüksek verim, daha iyi performans ve daha düşük gecikme süresi sunar.
Genel Bileşenler ve Geliştirme Kütüphanesi
/Applications/ServBay/package/common
Bu dizin, ServBay'in tüm uygulamaları için gereken genel bileşenleri saklar; örneğin, çeşitli *.dylib
dosyaları.
ServBay Development Library
kurulu ise, burada ayrıca include
dizini bulunur ve lib
dizini altında çeşitli *.la
, *.a
dosyaları olacaktır. Bunlar, yeniden derleme işlemi için gerekli olan kütüphane ve başlık dosyalarıdır.
Not: lib/*.dylib
dosyalarını silmeyin, aksi takdirde programlar gerekli kütüphane dosyalarının eksikliğinden dolayı hatalı çalışabilir.