Cpanel Nginx Admin Plugin Bandwidth problem

Cpanel’inizi nginx admin plugini ile birlikte kullanıyorsanız, bu noktada, bandwidth hesaplamalarında bir saçmalık oluyor(access_log’ları epey eksik yazıyor). Sebebi de, Cpanel’in logrotate işlemi sonrasında nginx üzerinden tıpkı apache gibi yapılan loglama işlemleri için belleğinde tuttukları file descriptor’ların (dosya tutucu pointer diye düşünebilrisiniz) rotate işlemi sonrasında kaybolmasından kaynaklanıyordu.

Çözümü için logrotate işleminin akabinde çalışacak bir hook eklemeniz gerekiyor. Bu hook nginx’i reload etmesi yeterli oluyor. (restart’a gerek yok)

İşyerinden bir arkadaşım durumu tespit etmişti, bana da yazmak düştü.

SMTP Hatası (451) … alicisi eklenemedi (Temporary local problem – please try later) cozumu

Bu hatayı nereden aldık?

Roundcube üzerinden mail göndermeye çalışırken SMTP Hatası (451) … alıcısı eklenemedi (Temporary local problem – please try later) hatasını aldık. Burada Exim ile çalışan Cpanel var. Webmail olarak roundcube kullanıyor. Ancak mail gönderirken bir popup da bu hatayı alıyordum.

Çözüm olarak Cpanel forumlarında okuduğum kadarıyla /etc/localdomains dosyasında domainin adı olmadığında bu problem oluşuyormuş. Çözüm olarak ben de

ssh tan server’e bağlanıp, nano ile /etc/localdomains dosyasına baktım. Gerçekten de domain orada yoktu. Dosyanın sonuna ilgili domaini ekledim, ve maili tekrar göndermek istediğimde bu sefer çalıştı.

Orada o domain neden yok, bir fikir yürütemedim, ancak, çözüm olarak bunu yapmanız gerektiğini belirtirim. Umarım işinize yarar.

Domain … has exceeded the max defers and failures per hour (6/5 (50%)) allowed. Message discarded.

Cpanel üzerinde çalışan bir mail sisteminiz var ve domainleriniz mail gönderirken bu hatayı alıyorsa, konu şu :

http://www.mediaserve.com/knowledgebase/98/Why-am-I-getting-a-Domain-has-exceeded-the-max-defers-and-failures-per-hour-error-.html adresinde okuduğum bilgilere göre, Cpanel, Mart 2012 de çıkardığı sürüm ile birlikte (11.32 den itibaren) Gönderilen – gönderilemeyen ve başarısız mail için bir oran belirlenmesine müsaade ediyor.

Örneğin Son 1 saatte 100 Mail gönderdiniz. bunların 40 ı başarılı, 60 ı da başarısız, veya ertelenmiş ise, sizin gönderim oranınız %40. Eğer Cpaneldeki bu ayarınız %40 ın altındaysa, bu domain üzerinden yeni bir mail gönderimi yapabilmek için bir süre beklemeniz gerekiyor.

http://docs.cpanel.net/twiki/bin/view/AllDocumentation/WHMDocs/MailLimitingFeatures linkinde Cpanelin kendi dökümanlarında okuduğum bilgiye göre,
“The percentage of Fail/Defer mails/hour to trigger hourly protection per domain” ; Yani, Bu % değeri, domain başına saatlik korumayı tetikler.

Ancak bu ayar 5 mail gönderimi için 2 başarılı 3 başarısız ise de devreye giriyor. O yüzden bir alt limit belirleyebilseymişiz daha iyi olurmuş. Bu yüzden en az %75 vermenizi önerebilirim.

“Domain … has exceeded the max defers and failures per hour (6/5 (50%)) allowed. Message discarded.” hatasının çözümü :

İlgili ayarı değiştirmek için de Cpanel WHM ye root olarak login olduktan sonra, Soldaki hızlı arama kısmına “Mail” veya “Tweak Settings” yazın. Gelen linke tıklayıp ilgili sayfayı açın.

Sayfa ortalarındaki “Maximum percentage of failed or deferred messages a domain may send per hour” yazan kısım, bahsi geçen ayarın yapıldığı yerdir.

Umarım faydası olur.

cpanel eximstatsi otomatik bosaltmak – python

Eximstats tablonuz zaman zaman şişip, makinanızın diskinde gereksiz yer kaplıyorsa, aşağıdaki python kodu ile bu veritabanınızı boşaltabilirsiniz.
Bu dosyayı da cronjob’a eklerseniz, her gün otomatik olarak bu işlem gerçekleşmiş olur.

import MySQLdb as sql
import sys

connection = sql.connect('localhost','root','mysqlrootsifresi','eximstats')
cursor = connection.cursor()
cursor.execute("show tables")
result=cursor.fetchall()
for x in result:
        cursor.execute("truncate %s" % str(x[0]))

Not : python 2.4 üzerinde geliştirilmiştir. 2.7 de veya 3.x te çalışacğaının garantisini veremeyiz.
* python-mysql eklentsinin yüklenmiş olması gerekmektedir.