Yazılar

Apache unable to open logs hatası

Apache web servisini resetlerken “unable to open logs” hatası alıyorsanız bu apache sistem kullanıcısının en fazla açabileceği dosya sayısını aşmışsınız manasına gelir ki sizi tebrik ederiz.Hosting işini büyütmüşsünüz.Artık öntanımlı değerlerler size yetmiyor.

Debian/Ubuntu türevi bir hosting sunucunuz varsa;

/etc/apache2/envvars dosyanızda aşağıdaki parametreyi değiştiriniz.

APACHE_ULIMIT_MAX_FILES=’ulimit -n 131072′

Centos/Redhat tabanlı bir sistem kullanıyorsanız

/usr/sbin/apachectl dosyanızı en sevdiğiniz editorle açınız.

ULIMIT_MAX_FILES= satırını # ile kapatın ve alttaki satır ile yeni tanımlamayı yapın.

ulimit -n 131072

Değerleri deneysel olarak değiştirebilirsiniz.131072 kesmedi 1,5 katına çıkarın mesela.

Benzeri olarak alternatif çözüm nispeten eski sistemlerde init.d altındaki startup scriptleri de olabilir.Örneğin /etc/init.d/http dosyasında ulimit satırını başlangıçta olacak şekilde yerleştirebilirsiniz.

Apache fastcgi can’t apply process slot for error hatası

fb0b45015a

mod_fcgid Apache 2 webserverlarda yaygın olarak kullanılan bir modüldür.Php scriptlerini belli bir kullanıcının çalıştırmasına olanak tanır.

öntanımlı olarak belli bir limiti olan bu modülün limitleri sınıra dayandığında websiteler oldukça yavaş çalışmaya başlar,zaman zaman “500 Internal Server error” hatası alırsınız.

yapılması gereken;

Redhat ve türevlerinde;

/etc/httpd/conf.d/fcgid.conf

Debian,Ubuntu türevlerinde

/etc/apache2/mods-enabled/fcgid.conf

dosyasını açıp

FcgidMaxProcesses değerini arttırmaktır.

Daha sonra Apache web servisini yeniden başlatmalısınız.

debian ve ubuntu için : service apache2 restart

redhat ve centos 6.x için /etc/init.d/httpd restart veya service httpd restart

7.x versiyonları için systemctl httpd restart (geriye dönük uyumluluk için  service httpd restart komutu da 7.x versiyonlarda çalışmaktadır.)

Web Sunucu Güvenliği İpuçları-II

Php destekli bir apache web sunucunda kapatılması gerekli php fonksiyonları

mail,system, dl, array_compare, array_user_key_compare, passthru, cat, popen, proc_close, proc_get_status, proc_nice, proc_open,escapeshellcmd,escapeshellarg, show_source, posix_mkfifo, ini_restore, mysql_list_dbs, get_current_user, getmyuid,pconnect, link, symlink, fin, exec, fileread, shell_exec, pcntl_exec, leak, apache_child_terminate, chown, posix_kill, posix_setpgid, posix_setsid, posix_setuid, proc_terminate, syslog, fpassthru, execute, shell, chgrp, stream_select, passthru, socket_select, socket_create, socket_create_listen, socket_create_pair, socket_listen, socket_accept, socket_bind, socket_strerror, pcntl_fork, pcntl_signal, pcntl_waitpid, pcntl_wexitstatus, pcntl_wifexited, pcntl_wifsignaled, pcntl_wifstopped, pcntl_wstopsig, pcntl_wtermsig, openlog, apache_get_modules, apache_get_version, apache_getenv, apache_note, apache_setenv, virtual, eval, allow_url_fopen, pconnect, p_connect,posix_getpwuid,fileowner,symlink,readlink

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

 

Ubuntu 10 Plesk 9.5.4 Atmail Problemi

Problem : Ubuntu Linux 10 üzerinde koşturan  Parallels Plesk 9.5.4 yazılımına dahil edilmiş olan atmail webmail istemcisinin,sistemde doğru şekilde çalışmamasının hatta giriş bile yapılamaması

Problemin kaynağını /var/log/atmail/error.log dosyasında anlık olarak görebiliyoruz.atmail istemcisi gereksinim duyduğu javascript dosyalarının pathleri doğru klasörlere yönlendirildiği halde (/etc/apache2/conf.d/zzz_atmail_vhost.conf dosyasında ) bu dosyaları /usr/share/javascript klasörü altında aramaktadır.

Sebebi Ubuntu’nun Apache konfigurasyonunda bir aliastan kaynaklanmaktadır.Sorundan ziyade çakışma olan dosya ve içeriği şu şekildedir.

/etc/apache2/conf.d/javascript-common.conf
Alias /javascript /usr/share/javascript/

<Directory “/usr/share/javascript/”>
Options Indexes FollowSymLinks MultiViews
</Directory>

Bu yönlendirmeyi kontrollü bir şekilde iptal ederek/değiştirerek veya /var/www/atmail/javascript dizini altındaki tüm dosya ve klasörleri /usr/share/javascript altında atarak problemi giderebilirsiniz.