Yazılar

Plesk Onyx php fpm limitlerini arttırmak

Bir websitenin fpm pool ayarlarında karşınıza çıkabilecek birkaç method vardır.Bunlardan ondemand tipi en çok önerilen yöntemdir.Aşağıda bir websitenin nasıl pool ayarlarının yapılacağını göreceksiniz.

Öncelikle

/opt/plesk/php/5.6/etc/php-fpm.d/alanadiniz.com.conf

dosyasından bahsedelim.Bu hostinginize özel fpm konfigurasyon dosyasıdır.

; By default use ondemand spawning (this requires php-fpm >= 5.3.9)
pm = ondemand
pm.max_children = 5
pm.process_idle_timeout = 10s
; Following pm.* options are used only when ‘pm = dynamic’
pm.start_servers = 1
pm.min_spare_servers = 1
pm.max_spare_servers = 1

Deneme yapmak için bu dosyada değişiklik yapabilirsiniz.Ancak httpmng çalıştırdığınızda veya plesk hosting ayarlarından birini değiştirip ok butonuna tıkladığınız anda yaptığınız değişikliklerin yok olacağını unutmayın.Kalıcı konfiguraston için zaten dosyanın en başında ne yapmanız gerektiği yazıyor.

; ATTENTION!
;
; DO NOT MODIFY THIS FILE BECAUSE IT WAS GENERATED AUTOMATICALLY,
; SO ALL YOUR CHANGES WILL BE LOST THE NEXT TIME THE FILE IS GENERATED.

; If you need to customize this file, use either custom PHP settings tab in
; Panel or override settings in /var/www/vhosts/system/alanadiniz.com/conf/php.ini.
; To override pool configuration options, specify them in [php-fpm-pool-settings] ; section of /var/www/vhosts/system/alanadiniz.com/conf/php.ini file.

Yapmanız gereken

/var/www/vhosts/system/alanadiniz.com/conf/php.ini dosyasını nano veya vi ile açıp en alta indikten sonra örnek olarak;

[php-fpm-pool-settings] pm.max_children = 100

yazmak olacaktır.Max children zaten ondemand methoduyla ilgili olduğundan dolayı diğer parametreleri yazma gereği duymuyorum.Onlar zaten fpm conf dosyasında var.Dosyayı kaydettikten sonra son olarak yapılan değişikliğin uygulanmasını sağlıyorum.

/usr/local/psa/bin/php_settings -u

 

Hepsi bu kadar.İlaveten bu ayarlar cloudlinux ile gelen cagefs-lve için geçerli değildir.Cloudlinux php-fpm yi an itibariyle hala desteklemiyor.

Eğer whm/cpanel kullanıyorsanız web arayüzden yapılabiliyor.Plesk Onyx ‘de bunu web arabirimine taşıyacağını duyursa da hala böyle bir kolaylık görememekteyiz.

Plesk 11x 12x Bad Gateway Hatası ve Çözümü

Plesk panele http/8880 veya https/8443 portlarından erişim yapamadığınızda,sunucuya ssh üzerinden giriş yaparak şu logu takibe alın.

/var/log/sw-cp-server/error_log

Bu, plesk panelin kendisinin üzerinde koştuğu nginx web server’ın hata kaydıdır.Web siteler için kullandığınız nginxten farklı olduğunu söylememe gerek yok sanırım.

Eğer yukarıdaki log dosyası içeriğinde ,

recv() failed (104: Connection reset by peer) while reading response header from upstream, client: 123.123.123.123, server: , request: “POST <some url>

şeklinde hata satırları görüyorsanız alltaki dosyada ilgili değişiklikleri yapınız.

 /etc/sw-cp-server/config
fastcgi_buffers 16 16k;
fastcgi_buffer_size 32k;

Ardından ilgili servisleri yeniden başlatınız.

# /etc/init.d/sw-cp-server restart

# /etc/init.d/sw-engine restart

Unable to log into Plesk: Access for administrator from address xx.xx.xx.xx is restricted in accordance with IP Access restriction policy currently applied

Eğer yukarıdaki hata satırlarını göremediyseniz muhtemelen ip adresiniz bloklanmış olabilir.Farklı bir ip üzerinden girmeyi deneyin veya yine ssh üzerinden login olarak mysql shell’i açın.

mysql -u admin -p$(cat /etc/psa/.psa.shadow)

use psa;

mysql> select * from cp_access;

mysql> select * from misc where param=’access_policy’;

Engellenmiş ip adreslerini ilk sql cümlesinin çıktısında görebilirsiniz.Bu kayıtları silmek için

mysql> delete from cp_access;

Erişimi heryere açmak için;

mysql> update misc set val=”allow” where param=’access_policy’;

 

Plesk arayüzünü Nginx üzerinde php-fpm ile beraber çalışan bir sistemde sunar.Benzeri şekilde websitelerinizde de aynı mantıktadır.Tek farkı websitelerin çalıştığı ortamdan ayrılmış,farklı portlardan çalışan yazılımlardır.

Eğer fpm limitleri yetmiyor veya bir başka problem olduğunu düşünüyorsanı şu dosyalar size yardımcı olabilir.

/etc/sw-engine/pool.d/plesk.conf —> Plesk uygulaması için hazırlanmış fpm limitleri,pm,pm_max_children ,max server max request gibi..

/etc/sw-engine/sw-engine-fpm.conf —> Global fpm ayarları (Sadece plesk uygulaması için)

 

Linux Pleskte dns zone dosyalarını yeniden oluşturma

Plesk 9.x versiyonunda dns zone dosyalarını tekrar oluşturma scripti

#!/bin/sh

ADMIN_PASS=`cat /etc/psa/.psa.shadow`
MYSQL_BIN_D=`grep MYSQL_BIN_D /etc/psa/psa.conf | awk ‘{print $2}’`
PRODUCT_ROOT_D=`grep PRODUCT_ROOT_D /etc/psa/psa.conf | awk ‘{print $2}’`
mysql=”${MYSQL_BIN_D}/mysql -N -uadmin -p${ADMIN_PASS} psa”

query=”select name from domains;”
domains=`echo $query | $mysql `

for i in ${domains}; do
echo “echo $i”
$PRODUCT_ROOT_D/admin/sbin/dnsmng update $i
done

Plesk Linux Sunucularda büyük log dosyalarını bulmak

Kontrol edilmediğinde siz hiç farkına varmadan sunucunun disk alanını bitirebilecek log dosyaları oluşabilir.Örneğin plesk hosting panelde tüm vhostların error log dosyalarını şu şekilde sıralatabilirsiniz

Selection_013

Farklı sistem veya ispconfig,cpanel,directadmin gibi farklı yazılımların kurulu olduğu sunucularda dosya yolları farklılık gösterebilir.Yukarıda verdiğimiz örnek 9.x serisi Linux için olan Plesk sürümleri için geçerlidir.

Komut şu şekilde;

find /var/www/vhosts/*/statistics/logs/error_log -exec ls -la {} \; | awk ‘{print $5 $9}’ | sort -n

Eğer tüm error log ları silmek isterseniz yine yukarıdaki sisteme göre şöyle bir söz dizimi işinize yarayacaktır.

find /var/www/vhosts/*/statistics/logs/error_log -exec rm {} \;

Güncel Not:

Plesk 12.x ve Onyx de log dosyaları hem statistics/logs hem de webdizini/logs altında görünmektedir.Bu dosyalar dosya sisteminden hard (sembolik) link ile bağlanmıştır.Yani aslında aynı dosyadır.Bu durumda komutu şu şekilde uygulayabilirsiniz;

find /var/www/vhosts/logs/error_log -exec ls -la {} \; | awk ‘{print $5 $9}’ | sort -n

 

Plesk Linux 9.5.x Microupdate Güncelleme

# $PRODUCT_ROOT_D/admin/sbin/autoinstaller --select-product-id plesk --select-release-current --reinstall-patch --install-component base