Cuma, Aralık 6, 2024

IMAP e-postalarınızı nasıl tekilleştirirsiniz?

IMAP e-postalarını tekilleştirmek, yani IMAP hesabınızdan aynı e-postaları silmek için bir araç göstericem size. Varsayılan olarak, yalnızca aynı klasördeki postaları siler ve yinelenen e-postaları bulmak için Message-ID başlığını kullanır. Ayrıca oldukça hızlıdır, çünkü mesajların tamamını değil, yalnızca mesaj başlıklarını yükler ve karşılaştırır. Ardından klasöre girin, sisteminizde umarım python3 vardır. Aşağıdaki gibi çalıştırın ve bırakın kod […]

Python ile Proxy Checker

İnternet üzerinden bol miktarda ücretsiz proxy bulup bir takım işler yürütürken hangi proxy’nin çalışıp hangisinin çalışmadığına bakmamız çok önemli Temelde 1 adet bağımlılığı bulunuyor, geri kalanı Python 3 içerisinde yer alan bağımlılıklar Gerekli olan bağımlılıkları kurmak için ben pip kullandım, siz kullandığınız paket yöneticiyle bu işlemi yapabilirsiniz. Nihai kodumuz şu şekilde olmakla beraber, birden çok […]

Django’da Migrationlar Nasıl Sıfırlanır?

Uygulamanızda çokça migration dosyası olabilir, bu konuda korkmanıza veya gerilmenize gerek yok hiç bir sıkıntı çıkmaksızın kullanmaya devam edebilirsiniz. Testlerinizi çalıştırırken sadece süreyi uzatacaktır. ci/cd süreçlerinde bunu biraz iyileştirmek isterseniz kullanabilirsiniz ancak bence gerek yok. Git kullanıyorsanız bu işlemi yaparken öyle fazla korkmanıza da gerek yok, sadece Migration ve gerekli dosyaları kaldıracağız sonrasında ise sıfırlayıp […]

Django Pagination with Bulma CSS

We needed django pagination in a small project, I edited a piece of code that was visually compatible for bulma css you may need to make some changes to the code (design, structural or general) Follow the steps below to add to the template, First, let’s create our file that we are going to add. […]

Gitignore Nasıl Kullanılır?

Gitignore MacOS için ön tanımlı olarak kullanılması önerilen .gitignore dosyamızı sistemimize dahil ediyoruz. Windows işletim sistemi kullanırken ön tanımlı .gitignore dosyası için aşağıdaki kullanılacak. Linux işletim sistemi kullanırken ise aşağıdaki ön tanımlı .gitignore kullanılacak. Sistem genelinde kullanılacak olan bu .gitignore ayarlamalarını isterseniz kendinize göre tekrardan düzenleyebilirsiniz.

Web Siteleri İçin Zaman Ayarlı Gece Modu Nasıl Yapılır?

Bildiğiniz üzere gece modu uygulaması günümüzde oldukça popüler, okuma alışkanlıkları değiştikçe ve geliştikçe bu tarz güzel özellikler arayüz tasarımlarında karşımıza çıkmakta. Basit bir şekilde zaman ayarlı gece modu oluşturabiliriz, üstelik bunu yaparken o kadar fazla kod bilgisi bilmenize gerek yok. Önce zamana göre gece modunu aktif eden JavaScript kodumuzu şu şekilde paylaşıyorum. Burada belirttiğimiz zaman […]

Python ile Para Birimi Biçimlendirme İşlemi

Her para biriminde neredeyse farklı formatlama şekilleri var, örneğin bir ödeme sistemi yapıyorsunuz diyelim bunda para birimini biçimlendirmek çok önemli yapılacak olan yanlış bir biçimlendirme ile kullanıcı yüksek ve/veya düşük ücret ile ürün alabilir. Bu gibi durumların önüne geçebilmek amacıyla mümkün olan en iyi şekilde gelen değeri formatlamak ve küsuratlar ile dönecek ondalık değerler önemli

Django MongoDB Paginator

Mongodb kullananlar django’nun kendi paginatorunu kullandıklarında performans sorunları yaşıyor olabilirler, bu kod ile bu sorunu ortadan kaldırabilirsiniz. Kullanmayı bıraktığımız bu güzel kodumuz sizlerle. Kendinize göre uyarlamayı ihmal etmeyin, kodumuzda sayfa kaldığı yerden devam etsin diye ufak tefek değişiklikler yapılmıştır. BONUS

Django’da Parolasız Oturum Açma(Passwordless Authentication) Mekanizması Nasıl Uygulanır?

Sızdırılan parolaların durumları ortada hal böyle olunca alternatif oturum açma mekanizmaları gündeme gelmeye başladı, bunlardan bizimde zamanında kullandığımız yöntemi artık açıklama zamanı geldi. Bu sistemi hali hazırda kullanmayı bıraktık, elimde kalan halini sizlerle paylaşıyorum. Öncelikli olarak bu sistemde uygulanan yapıda girişler suistimal edilmemesi amacıyla hem tek kullanımlık URL hemde giriş sırasında mail gatewaylerin linkin geçerliliğini […]

TC Kimlik Numarası Nasıl Doğrulanır Ve Üretilir?

Eskiden geliştirmiş olduğum ve kullanmayı bıraktığımız TC Kimlik doğrulama modülünün kodları aşağıdaki gibidir, burada hem TC Kimlik numarası algoritması çalıştırılmakta ve doğrulanmaktadır. Aynı zamanda Suriyeli, Mülteci ve İkame izin almış kişilerinde doğrulama işlemleri yapılabilir. T.C. Kimlik No, on bir (11) haneden oluşan, Nüfus ve Vatandaşlık İşleri Genel Müdürlüğü tarafından Türkiye vatandaşlarına verilmiş 11 rakamdan oluşan […]

Wordpress’de Özelleştirilmiş Önizleme Linki Nasıl Oluşturulur?

Wordpress üzerinde Gutenberg kullanan benim gibi arkadaşlar kullandıkları preview linkini cache kurallarına göre özelleştirmek isteyebilirler, bu noktada aşağıdaki gibi functions.php dosyasında yapılacak bir değişiklik ile linki istediğiniz şekilde düzenleyebilme imkanınız mümkün Zaman damgası eklemeyi unutmadık ve gereken kod şu şekilde oldu Bundan sonra admin panelinde cache silmeyi unutmayın, daha sonrasında istediğiniz gibi linkleriniz oluşmaya başlayacak.

Django Dil Çerezleri İçin Arakatman

Projeleri geliştirirken çoklu dil için çalışma yapıyor olabilirsiniz globalleşen dünyada tek dil tek millet gibi kavramlar yok, bunun yerine çoklu dil ve herkese hizmet etmek var. Bu bağlamda kişinin dil ayarlarını tarayıcısına kayıt etmek için aşağıdaki yolu kullanabilirsiniz. 10 yıl geçerli olacak şekilde kayıt edilir. Session’a ayrıca eklenir.

Matomo Google Arşiv SiteID Düzeltme

Google Analytics kullandınız ve gün geldi benim gibi açık kaynaklı ve google’dan daha güzel veri sunan bir araca geçmek istediniz, Matomo bu noktada tam bir kurtarıcı ve oldukça güzel veriler sunuyor, ancak eski verilerinizi aktarma sırasında sitenizi kullanıyorken aktarım yapıyorsanız siteid değişiyor ve eski verileri göremiyorsunuz. Bu noktada yapılacak çok basit bir şey var, eski […]

Django’da Amazon S3 Üzerinde Tutulan Private Dosyaların Sunulması

Herkesten sakladığınız ve sadece erişim isteği isteyen kullanıcıların dosyalara erişmesini sağlamak istiyorsanız ve bu isteğinizi Amazon üzerinde bulunan S3 bucketınızda yapacaksanız derdinizin çözümü burada, AWS S3 de tutulan dosyalar private olarak geçmelidir. Amazon S3 API anahtarınızda s3:GetObject yetkisi mutlaka bulunmalıdır. django-storages Kullanılıyorsa ve dosyalar onun üzerinden sisteme yükleniyorsa, imza hatası alınmaması için mutlaka AWS_S3_SIGNATURE_VERSION = […]

Windows’da Django Locale Yapılandırma

Django uygulamaları geliştiriyor ve çok dilli bir yapıyı da beraberinde kullanıyorsanız, geliştirme ortamınızda Windows ise bir takım hatalar ile karşılaşabilirsiniz. Özellikle gettext ile dil dosyalarının oluşmaması gibi büyük bir problem bulunuyor. Hata şu şekilde Bu sorunun çözmek için gettextin windows sürümünü sisteme dahil edin. Ardından hiç bir şey olmamış gibi dil dosyası oluşacak

Python’da Uygulama Loglarının Sentry Üzerine Geçirilmesi

Uygulama içerisinde yer alan envai çeşit günlüğün uzak sunucuda hem depolanması hem takip edilmesi amacıyla Sentry kullanmak iş görüyor. Bu noktada yapılandırması şu şekilde Uygulamanın herhangi bir yerine ekleyin, yeter ki çalışsın. Şimdi geldik logların yönlendirilmesine, normal bir logmuş gibi davranmanız yeter. Extra bir çabaya gerek yok. Bu aşamadan sonra bütün loglar mis gibi Sentry […]

PHP-FPM Güvenlik Eklentisi Sorunu

Hata loglarında aşağıdaki gibi birşey görüyorsanız ne yapmanız gerekiyor? has been denied (see security.limit_extensions) gördüğünüzde istemsizce şaşırabilirsiniz. Çoğu zaman bu hata ile karşılaşıldığında web siteleriniz yayında olmayıp “Access Denied.” hatasını verebilir. Çözüm ise NGINX tarafında yapacağımız ufak bir değişiklik olacak Bu sayede PHP-FPM üzerindeki security.limit_extensions ayarını kurcalamanıza gerek yok. İşlemden sonra kullandığınız PHP servisini yeniden […]

Django Uygulamalarında Varnish Cache Kullanımı

Varnish web sitelerini hızlandırmak için kullanılan bir Reverse Proxy aracıdır. Ziyaretçilere asıl sunucu gibi gözüken bir ara katman vekilidir. Cache aldığı dosyaları bellek üzerinde tutabilir. Django üzerinde geliştirdiğiniz bir proje zamanla alıp yürürse ve uygulama üzerinde tuttuğunuz Cache(Yani önbellek) zamanla işe yaramamaya başlarsa yapılandırmanız içerisine Varnish ekleyebilirsiniz. Aşağıda bulunan yapılandırmayı kullanarak Django üzerinde statik dosyaların […]

ERROR 1298 (HY000): Unknown or incorrect time zone: ‘UTC’ Hatası ve Çözümü

Yeni bir uygulama için MySQL üzerinde veritabanı oluşturdum. Direk olarak SQL komutlarını veritabanına yazdırmak ve gerekli veriyi yüklemem gerekiyordu lakin aşağıdaki hata ile karşılaştım. Bahsi geçen bu hatanın çözümü İnternet ortamında hep aynı noktaya çıkarttı beni, Olayın özüne pek inemedim ama sorunu kolay bir şekilde aşağıdaki komut aracılığı ile çözümledim.

SSH İle PHP’ye ionCube Loader Eklentisi Nasıl Kurulur

Bu makalede PHP de kullanılmak üzere ionCube Loader eklentilerinin nasıl kurulacağını göstereceğim, fazlaca bir şekilde bu konu ile alakalı istek geliyordu. Bütün PHP 7 serisi için kurulumları göstermeye çalışacağım. PHP 5 serisi artık ömrünü tamamladığı için anlatmaya gerek bile yok ionCube ile şifrelenmiş dosyaları kullanmanızı önermem, kodları açık kaynak olarak teslim almanız önemli yazılımcı desteği […]

Windows WSL Üzerinde Anaconda Kurulumu ve Python Geliştirme

Geliştirme ortamı olarak benim gibi WSL üzerinden Linux kullanıyorsanız. Python kurulumu için olmazsa olmazımız olan Anaconda’nın nasıl kurulduğunu göstereceğim. Öncelikli olarak tercih ettiğiniz herhangi bir Linux dağıtımı sisteminize kurun, ben bu aşamada Debian’ı tercih edeceğim. Kurulum başarılı bir şekilde tamamlandıysa ve artık aşağıdaki gibi komut satırına düştüyseniz kuruluma başlayabiliriz demektir. Bize gerekli olan kütüphaneleri normal […]

Unknown/unsupported storage engine: InnoDB Sorununun Çözümü

8 Ekim tarihinde yaklaşık 20 ila 30 dakika arasında bir kesinti yaşamıştık. Bu kesintiye sebep olan MariaDB kardeşimizde bulunan bir sorundu, bahsi geçen sorun şu şekildeydi Bu hataya sebep olan durumun ne olduğu konusunda en ufak bir fikrim yok, çünkü rutin bir güncelleme ve yeniden başlatma sekansıyla birlikte ortaya çıkan bir durumdu bu Önce mysqlin […]

Python’da IP Adresi Nasıl Doğrulanır?

IP Adreslerinin sisteme eklenmeden önce doğrulanması gerekir, doğru olmayan bir değer sistem üzerinde istenmeyen sonuçlara neden olabilir. IP adreslerini bir kaç yöntem ile doğrulayabiliriz. İstediğiniz yöntemi kullanabilirsiniz. Python içerisinde gelen ipaddress kütüphanesinden faydalanmak Socket kütüphanesinden faydalanmak

PostgreSQL’de id Alanlarında UUID Kullanımı

Django kullanım sırasında id alanlarını normal sayı yerine UUID ile değiştirmek istediğinizde SQLite üzerinde herhangi bir hata ile karşılaşmazsınız ama iş PostgreSQL kullanmaya gelince ortalık itinayla karışacaktır. Özellikle daha önceden bu alanlarda id kullanıyorsanız. Daha sonra değiştirmeye kalktığınızda haliyle aşağıdaki hata sizi karşılayacak. Aşağıdaki hata karşınıza çıkması muhtemel Çözüm olarak ise aşağıdaki adımları uygulayınız. Sorun […]

Flask + GridFs + Mongodb ile Basit REST API Nasıl Yapılır

Özellikle yapacağım basit işler için her zaman micro framework olarak Flask tercih ettim, bu örneği de arkadaşıma yardım ederken hazırladım. Ufak tefek işler için değiştirip ekleme yapıp falan kullanabilirsiniz. Python’un öğrenmesi kolay ancak API servis mantığı, Mongodb yapısı ve GridFs kullanımlarını öğrenmek biraz zaman alabiliyor. Bu konulara ayrıca odaklanmanızı şiddetle öneririm Kullandığımız bileşenlerin sıralı tam […]