Debian 8de NGINX, PHP-FPM ve MariaDB Kurulumu

Bu kılavuz, NGINX, PHP Fast Process Manager ve MariaDB'yi kullanarak Debian 8'e "alternatif" LAMP yığınını nasıl doğru şekilde kuracağınızı ve yapılandıracağınızı gösterecektir.

nginx

NGINX "önce ters proxy, ikinci web sunucusu" dur. Birçok durumda daha fazla esneklik ve daha iyi performans sunan Apache'ye popüler ve büyüyen bir alternatiftir. Bu derste, bunu web sunucumuz olarak kullanacağız.

Favori SSH istemcinizi çalıştırın ve sunucunuza giriş yapın. Windows kullanıcıları için, "PuTTY" ücretsiz ve hafif bir SSH istemcisidir. Linux ve Mac kullanıcıları işletim sistemlerinde varsayılan olarak bulunan terminali kullanabilirler. Bu öğretici için sunucunuza "root" kullanıcısı olarak giriş yaptığınızı varsayacağız.

Yeni başlayanlar için, her şeyin güncel olduğundan emin olalım. Güncelleştirmeleri denetlemek ve yüklemek için aşağıdakileri yazın.

apt-get update && apt-get upgrade

Yapılandırma dosyalarımızı vim'de düzenleyeceğiz. Vim varsayılan olarak yüklü değildir, hadi yükleyelim!

apt-get install vim

Şimdi NGINX kurulum zamanı. Resmi NGINX Debian deposundan NGINX'in en son sürümünü kurmak isteyeceğiz.

wget http://nginx.org/keys/nginx_signing.key
apt-key add nginx_signing.key
echo 'deb http://nginx.org/packages/debian/ jessie nginx' >> /etc/apt/sources.list
echo 'deb-src http://nginx.org/packages/debian/ jessie nginx' >> /etc/apt/sources.list
apt-get update && apt-get install nginx

Şimdi NGINX yapılandırmasını biraz düzeltmemiz gerekiyor. Yapılandırma dizinine gidin.

cd /etc/nginx

Hızlı bir vim dersi

Metin belgesinde gezinmek için ok tuşlarını kullanın. Düzenleme yapmaya başlamak için klavyenizdeki "ekle" düğmesine basın. Klavyenizde ekleme düğmesi yoksa, "i" tuşuna basın. Vim'in dibine doğru artık "INSERT" yazdığını fark edeceksiniz. Ekle modu, geri tuşu ile silmenize veya yeni karakterler yazarak girmenize olanak tanır.

Hadi açalım nginx.confve konuşalım :

vi nginx.conf

Varsayılan kullanıcıyı değiştirelim, çalışan işlem sayısını kontrol edelim ve erişim günlüğünü kapatalım.

"User" ve "worker_processes" yönergeleri en üste yakındır. Aşağıdaki değerleri deneyin:

"Worker_processes" ifadesini sunucunuzdaki kullanılabilir CPU çekirdeği sayıs��na ayarlamak isteyeceğinizi unutmayın. Bu örnekte, NGINX varsayılanı olan 1 var.

user www-data;
worker_processes 1;

Ayrıca, G / Ç performansını artırmak için erişim günlüğünü devre dışı bırakmak isteyeceğiz. "Access_log" u bulana kadar ok tuşlarıyla aşağı gidin. Aşağıdakileri değiştirin:

access_log off;

Son olarak, "client_max_body_size" ifadesini daha sonra PHP'de yapılan bazı değişikliklere karşılık gelecek şekilde ayarlayacağız. Sorunu kurtaralım ve şimdi yapalım. "Access_log" ifadesinin hemen altına ekleyin:

client_max_body_size 12m;

Düzenlemeyi bitirdiğinizde klavyenizdeki "Esc" tuşuna basın. Vim artık dosyanın altına doğru "INSERT" demeyecek.

Değişikliklerimizi kaydetmek ve vim'den çıkmak için aşağıdaki tuş sırasına basın:

SHIFT :(colon)
wq
Press "Enter"

Yukarıdaki vim kung fu, değişikliklerinizi diske yazacak ve vim'den çıkacak ve sizi bash kabuğuna geri bırakacaktır.

Şimdi, örneğimiz için siteye özgü bir yapılandırma yapmamız gerekiyor! Diğer örnek yapılandırmaları da sileceğiz. Takip etmeyi dene:

cd conf.d
rm example_ssl.conf default.conf
vi my_site.conf

www.confVarsayılan NGINX yapılandırmasına gevşek bir şekilde kısa ve basit bir şekilde bakacağız, ancak birkaç değişiklik yaptık. Insert tuşuna bastığınızda aşağıdaki örneği kopyalayıp yapıştırabilirsiniz.

Web sitenizin kök dizinine işaret etmek için "kök" yönergesini ve alan adınıza karşılık gelecek şekilde "sunucu_adı" nı düzenlemeyi unutmayın.

server {
    listen 80;

    root /path/to/your/website;
    index index.php index.html index.htm;

    server_name mydomainname.com www.mydomainname.com;

    location / {
            try_files $uri $uri/ /index.php;
    }

    location ~ \.php$ {
            try_files $uri =404;
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
            include fastcgi_params;
            fastcgi_pass unix:/var/run/php5-fpm.sock;
    }
}

Şimdi bu öğreticinin NGINX yapılandırma bölümünü tamamladık. PHP'yi kurduktan hemen sonra NGINX'i birazdan başlatacağız.

PHP-FPM

PHP-FPM, PHP Hızlı İşlem Yöneticisidir. NGINX kullanırken bu gereklidir, çünkü Apache'den farklı olarak NGINX PHP'yi modül olarak çalıştırmaz. Bu, NGINX'in bellek ayak izini azaltmak için yapıldı. NGINX'in her şeyden önce ters vekil olmakla ilgili bölümünü hatırlıyor musunuz? İşte burada devreye giriyor; NGINX'e gönderilen PHP istekleri, ağır kaldırma işlemleri için PHP-FPM'ye beslenir.

PHP-FPM'yi yükleyelim.

apt-get install php5-fpm php5-mysqlnd

PHP betiklerinizin gerektirdiğine bağlı olarak, varsayılan olarak bulunmayan diğer PHP modüllerini kurmanız gerekebilir. Popüler olanlar php5-gdve php5-mcrypt. Bunları aşağıdaki komutla kurabilirsiniz.

apt-get install php5-module_name_here

Artık PHP-FPM yüklendiğine göre, güvenliği ve işlevselliği artırmak için birkaç hızlı düzenleme yapmak isteyeceğiz.

cd /etc/php5/fpm
vi php.ini

Başka bir hızlı vim dersi zamanı! php.iniDosya kesinlikle çok büyük. Birkaç anahtar değer aramak bütün gün sürecektir. Ne aradığımızı bildiğimiz için arayacağız. Aşağıdakileri yazın:

/upload_max_filesize

Bu, varsayılan olarak 2 megabayt olarak ayarlanmıştır. Kullanıcıların PHP uygulamalarınıza 2 megabayttan daha fazla dosya yüklemesine izin vermek istiyorsanız, bunu değiştirmeniz gerekir. 10M muhtemelen şimdilik güvenli bir bahis, ancak daha yüksek değerler de kabul edilebilir. Bu ayar yapılandırmalara göre değişiklik gösterir. Eğitim amacıyla:

upload_max_filesize = 10M

Bir göze batan güvenlik açığı daha. Biraz daha aşağı kaydırın veya arayın. "Allow_url_fopen" i "Kapalı" ya çevirmeliyiz. Bu, PHP'nin RFI (Uzak Dosya Ekleme) olarak bilinen UZAKTAN barındırılan PHP dosyalarını çalıştırmasını önler. Birçok sunucu bu şekilde saldırıya uğradı.

allow_url_fopen = Off

Ve "upload_max_filesize" ifadesini değiştirdiğimiz için, şimdi "post_max_size" yi değiştirmek zorundayız. PHP tarafından işlenen taleplerimizle ilişkili ek yükü hesaba katmamız gerektiğinden, bu değer "upload_max_filesize" den biraz daha büyük olmalıdır.

"/ Post_max_size" ile bir kez daha arayalım.

post_max_size = 12M

PHP dosya boyutlarınız için bu örneklerden daha büyük değerlerle gitmeye karar verirseniz NGINX yapılandırmanıza geri dönmeniz ve "client_max_body_size" ifadesini düzenlemeniz gerekeceğini unutmayın.

Şimdilik bu kadar. "Esc" tuşuna basarak düzenleme modunda olmadığınızdan emin olun. Vim kaydedin ve çıkın.

SHIFT :(colon)
wq
Press 'Enter'

PHP-FPM kurulumu tamamlandı.

mariadb

Sürekli olarak NoSQL veya MongoDB'ye doğru hareket eden bir dünyada bile, bazılarımız hala MySQL'e sadık kalmayı daha kolay buluyoruz. Bu özellikle birçok web uygulaması için geçerlidir. Neyse ki, artık Oracle MySQL için bir dizi "bırakma" değişikliği var. Debian 8 şimdi popüler MariaDB'yi içeriyor. MariaDB, 5.5 sürümüne dayanan bir Oracle MySQL çatalı. MariaDB, tüm niyet ve amaçlar için bu MariaDB 10'u çağırır. Oracle MySQL'in TAM yerine geçer. Bunu kalbimdeki MySQL olarak düşünün, Oracle markasını ve bazı yeni özellikleri saklayın.

apt-get install mariadb-server

ÖNEMLİ: Kesinlikle, olumlu olarak, MariaDB için güçlü bir kök parola seçmeniz gerekir. Güvenli bir yere kaydedin. MariaDB kurulumu sırasında iki kez girmeniz gerekecek.

MariaDB yapılandırmasını biraz değiştirelim. Ağ arayüzü üzerinden MariaDB dinlemeyi devre dışı bırakacağız. Bunun yerine, daha önce PHP-FPM'de olduğu gibi, sadece bir UNIX soketine bağlı kalacağız. Çoğu PHP uygulaması, yerel geridöngü arabirimi yerine UNIX soketi aracılığıyla veritabanı sunucusuna bağlanmayı desteklemelidir.

cd /etc/mysql
vi my.cnf

"Bind-address = 127.0.0.1" ifadesini arayın. Bu çizgiyi yorumlayın. Üstüne veya altına "atlama ağı" ekleyin.

#bind-address = 127.0.0.1
skip-networking

MariaDB ile işimiz bitti! Sonunda, öncelikle MyISAM veya InnoDB depolama motorlarını kullanıp kullanmayacağınıza bağlı olarak, aynı zamanda sunucunuz için kullanılabilir CPU çekirdeği ve RAM sayısı için de MariaDB yapılandırmanızı değiştirmek isteyebilirsiniz. Varsayılan değerler bizi bu süre içinde çalıştırıp çalışır duruma getirecektir.

Bu öğreticide yapılandırma dosyalarının değiştirildiği hizmetlerin her birini yeniden başlatalım.

systemctl restart nginx.service
systemctl restart php5-fpm.service
systemctl restart mysql.service

Hepsi bu - işimiz bitti. Bu noktada, tamamen işlevsel bir LNMP (LEMP) sunucunuz var!

Bu kılavuz, en az ince ayar ile yukarıdaki hizmetlere başlamak için genel bir kural olarak hizmet etmekti. Daha fazla bilgi için yukarıdaki paketlerin belgelerini okuyun. Bu örnek kurulum "kutudan çıkar çıkmaz" iyi çalışmasına rağmen, ayarlamalar yapılabilir ve büyük olasılıkla ihtiyaçlarınıza daha iyi uyacak şekilde yapılması gerekir.

Araştırma için önerilen alanlar:

  • NGINX'in önbellek kontrolünü kullanma ve değiştirme.
  • PHP-FPM "statik", "dinamik" veya "ondemand" görev yöneticisi ayarları.
  • Veritabanı sunucunuzdan en iyi şekilde yararlanmak için MariaDB performans ayarı.


Leave a Comment

Debianda NFS Paylaşımı Ayarla

Debianda NFS Paylaşımı Ayarla

NFS, bilgisayarların bilgisayar ağı üzerindeki dosyalara erişmesine izin veren ağ tabanlı bir dosya sistemidir. Bu kılavuz, klasörleri NF üzerinden nasıl açığa çıkarabileceğinizi açıklar

Debian 9da Diaspora ile Sosyal Ağınızı Kurun

Debian 9da Diaspora ile Sosyal Ağınızı Kurun

Farklı Bir Sistem mi Kullanıyorsunuz? Diaspora gizliliğe duyarlı, açık kaynaklı bir sosyal ağdır. Bu derste, bir Diaspora posının nasıl kurulacağını ve yapılandırılacağını öğreneceksiniz

Debian 9 Üzerinde Yakıt CMS Kurulumu

Debian 9 Üzerinde Yakıt CMS Kurulumu

Farklı Bir Sistem mi Kullanıyorsunuz? Fuel CMS, CodeIgniter tabanlı bir içerik yönetim sistemidir. Kaynak kodu GitHubda barındırılmaktadır. Bu kılavuz size

SSL / TLS ile vsFTPd Nasıl Güvenli Hale Getirilir

SSL / TLS ile vsFTPd Nasıl Güvenli Hale Getirilir

Çok Güvenli FTP arka plan programı, ya da sadece vsFTPd, özelleştirme yeteneği olan hafif bir yazılım parçasıdır. Bu derste bir müttefikimiz olacak

Debian 9 Üzerinde Thelia 2.3 Kurulumu

Debian 9 Üzerinde Thelia 2.3 Kurulumu

Farklı Bir Sistem mi Kullanıyorsunuz? Thelia, e-iş web siteleri oluşturmak ve PHP ile yazılmış çevrimiçi içeriği yönetmek için açık kaynaklı bir araçtır. Thelia kaynak kodu i

Debianda Chroot Oluşturma

Debianda Chroot Oluşturma

Bu makale size Debianda nasıl bir cezaevi hapishane kurulacağını öğretecek. Debian 7.x kullandığınızı varsayıyorum. Debian 6 veya 8 çalıştırıyorsanız, bu işe yarayabilir, bu

Debian 9 InvoicePlane Nasıl Kurulur

Debian 9 InvoicePlane Nasıl Kurulur

Farklı Bir Sistem mi Kullanıyorsunuz? InvoicePlane ücretsiz ve açık kaynaklı bir faturalandırma uygulamasıdır. Kaynak kodu bu Github deposunda bulunabilir. Bu rehber

Debian 9u Debian 10a Yükseltme

Debian 9u Debian 10a Yükseltme

Giriş Debian 10 (Buster), Debian 9un (Stretch) halefidir. 6 Temmuz 2019da piyasaya sürüldü. Bu derste, bir var olanı yükselteceğiz

Debian 9 LAMP VPS Arka Plan CMS 1.8.0 Kurulumu

Debian 9 LAMP VPS Arka Plan CMS 1.8.0 Kurulumu

Farklı Bir Sistem mi Kullanıyorsunuz? Backdrop CMS 1.8.0, basit ve esnek, mobil uyumlu, ücretsiz ve açık kaynaklı bir İçerik Yönetim Sistemidir (CMS)

Debian 9 Üzerinde BookStack Kurulumu

Debian 9 Üzerinde BookStack Kurulumu

Farklı Bir Sistem mi Kullanıyorsunuz? BookStack, bilgileri düzenlemek ve depolamak için basit, kendi kendine barındırılan, kullanımı kolay bir platformdur. BookStack tamamen ücretsiz ve açık

Ubuntu ve CentOS İçin Daha İyi İzleme Araçları

Ubuntu ve CentOS İçin Daha İyi İzleme Araçları

Giriş Linux sistemleri, süreçleri ve disk alanını izlemeye yardımcı olan varsayılan olarak top, df ve du gibi izleme araçlarıyla birlikte gelir. Çoğu zaman, onlar ar

CentOS 7, Ubuntu 16.04 ve Debian 9da Golang 1.8.3 Kurulumu

CentOS 7, Ubuntu 16.04 ve Debian 9da Golang 1.8.3 Kurulumu

Golang, Google tarafından geliştirilen bir programlama dilidir. Çok yönlülüğü, sadeliği ve güvenilirliği sayesinde Golang en popüler topluluklardan biri haline geldi

Debian 9a Cıvata CMS Takma (Uzatma)

Debian 9a Cıvata CMS Takma (Uzatma)

Farklı Bir Sistem mi Kullanıyorsunuz? Bolt PHP ile yazılmış açık kaynaklı bir CMSdir. Cıvata kaynak kodu GitHubda barındırılıyor. Bu kılavuz size Bolt CMnin nasıl kurulacağını gösterecektir

Munin ile Debian Sunucu Durumunu İzleme

Munin ile Debian Sunucu Durumunu İzleme

Munin, makinenizdeki süreçleri ve kaynakları araştırmak için bir izleme aracıdır ve bilgileri bir web arayüzü aracılığıyla grafiklerde sunar. Aşağıdaki kullanın

Debian 10da Apachede TLS 1.3ü Etkinleştirme

Debian 10da Apachede TLS 1.3ü Etkinleştirme

Farklı Bir Sistem mi Kullanıyorsunuz? TLS 1.3, 2018de RFC 8446da önerilen bir standart olarak yayınlanan Taşıma Katmanı Güvenliği (TLS) protokolünün bir sürümüdür

Debian 9 Üzerinde PyroCMS Kurulumu

Debian 9 Üzerinde PyroCMS Kurulumu

Farklı Bir Sistem mi Kullanıyorsunuz? PyroCMS, PHP ile yazılmış açık kaynaklı bir CMSdir. PyroCMS kaynak kodu GitHubda barındırılmaktadır. Bu kılavuzda entir boyunca yürüyün

Sunucunuza IP Adresi Aralığı Ekleyin (CentOS / Ubuntu / Debian)

Sunucunuza IP Adresi Aralığı Ekleyin (CentOS / Ubuntu / Debian)

Giriş Bu eğitimde, CentOS, Debian veya Ubuntu çalıştıran bir Linux sunucusuna tüm IP aralığını / alt ağını ekleme işlemini ele alacağız. Süreç

Counter Strikeı Ayarlama: Debianda Kaynak

Counter Strikeı Ayarlama: Debianda Kaynak

Bu kılavuzda, Debian 7de Counter Strike: Source oyun sunucusu kuracağız. Bu komutlar Debian 7de test edildi, ancak aynı zamanda o

Debian Üzerinde Snort Nasıl Yapılandırılır

Debian Üzerinde Snort Nasıl Yapılandırılır

Snort, ücretsiz bir ağ saldırı tespit sistemidir (IDS). Daha az resmi terimle, ağınızı şüpheli etkinlikler için gerçek zamanlı olarak izlemenizi sağlar

Debian 9 Üzerinde Dolibarr Kurulumu

Debian 9 Üzerinde Dolibarr Kurulumu

Farklı Bir Sistem mi Kullanıyorsunuz? Dolibarr, işletmeler için açık kaynaklı bir kurumsal kaynak planlaması (ERP) ve müşteri ilişkileri yönetimi (CRM). Dolibarr

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

Nintendo Switch Hakkında Son Derece Çılgın 6 Şey

Nintendo Switch Hakkında Son Derece Çılgın 6 Şey

Birçoğunuz Switch'in Mart 2017'de çıkacağını ve yeni özelliklerini biliyorsunuz. Bilmeyenler için, 'Switch'i 'olmazsa olmaz bir gadget' yapan özelliklerin bir listesini hazırladık.

Hala Teslim Edilmeyen Teknoloji Sözleri

Hala Teslim Edilmeyen Teknoloji Sözleri

Teknoloji devlerinin sözlerini yerine getirmesini mi bekliyorsunuz? teslim edilmeyenleri kontrol edin.

Büyük Veri Referans Mimarisi Katmanlarının İşlevleri

Büyük Veri Referans Mimarisi Katmanlarının İşlevleri

Büyük Veri Mimarisindeki farklı katmanları ve işlevlerini en basit şekilde öğrenmek için blogu okuyun.

Yapay Zeka Süreç Otomasyonunu Nasıl Bir Sonraki Seviyeye Taşıyabilir?

Yapay Zeka Süreç Otomasyonunu Nasıl Bir Sonraki Seviyeye Taşıyabilir?

Yapay Zekanın küçük ölçekli şirketler arasında nasıl popüler hale geldiğini ve onları büyütme ve rakiplerine üstünlük sağlama olasılıklarını nasıl artırdığını öğrenmek için bunu okuyun.

CAPTCHA: İnsan-AI Ayrımı İçin Ne Kadar Geçerli Bir Teknik Kalabilir?

CAPTCHA: İnsan-AI Ayrımı İçin Ne Kadar Geçerli Bir Teknik Kalabilir?

CAPTCHA, son birkaç yılda kullanıcıların çözmesi oldukça zorlaştı. Gelecekte spam ve bot tespitinde etkili kalabilecek mi?

Teknolojik Tekillik: İnsan Uygarlığının Uzak Bir Geleceği mi?

Teknolojik Tekillik: İnsan Uygarlığının Uzak Bir Geleceği mi?

Bilim hızla gelişip birçok çabamızı üstlendikçe, kendimizi açıklanamaz bir Tekilliğe maruz bırakmanın riskleri de artıyor. Okuyun, tekillik bizim için ne anlama gelebilir.

Teletıp ve Uzaktan Sağlık Hizmeti: Gelecek Burada

Teletıp ve Uzaktan Sağlık Hizmeti: Gelecek Burada

Teletıp, uzaktan sağlık hizmetleri ve gelecek nesiller üzerindeki etkisi nedir? Pandemi durumunda iyi bir yer mi değil mi? Bir görünüm bulmak için blogu okuyun!

Hackerların Nasıl Para Kazandığını Hiç Merak Ettiniz mi?

Hackerların Nasıl Para Kazandığını Hiç Merak Ettiniz mi?

Bilgisayar korsanlarının çok para kazandığını duymuş olabilirsiniz, ancak bu kadar parayı nasıl kazandıklarını hiç merak ettiniz mi? Hadi tartışalım.

macOS Catalina 10.15.4 Ek Güncellemesi Çözmekten Daha Fazla Soruna Neden Oluyor

macOS Catalina 10.15.4 Ek Güncellemesi Çözmekten Daha Fazla Soruna Neden Oluyor

Son zamanlarda Apple, sorunları gidermek için macOS Catalina 10.15.4'ü ek bir güncelleme yayınladı, ancak güncelleme, mac makinelerinde tuğla oluşmasına neden olan daha fazla soruna neden oluyor gibi görünüyor. Daha fazla bilgi edinmek için bu makaleyi okuyun