1. Dahili Bağlantılar
Site bağlantılarını analiz etme scripti, sunucu yanıt koduna göre bir rapor oluşturarak 404 hatası (sayfa bulunamadı) veren bozuk bağlantıları belirlemenizi sağlar.
Zamanla, bir siteye yeni sayfalar ve bağlantılar eklendikçe, eski bağlantılar güncelliğini yitirip ziyaretçileri artık var olmayan sayfalara yönlendirebilir. Bu özellikle çok sayfalı büyük siteler için önemlidir.
Tüm bağlantıları analiz ettikten sonra, hangi sayfalarda bozuk bağlantıların bulunduğunu raporda görebilir ve bu hataları düzeltebilirsiniz.
2. Harici Bağlantılar
Siteler birbirine dış bağlantılarla bağlıdır, ancak zamanla bu bağlantılar geçerliliğini kaybedebilir. Örneğin, bağlantı verilen sitenin yapısının değişmesi, yeni bir siteye geçiş yapılması veya tamamen kapanması gibi durumlar olabilir.
Bu script, sitenizden dışarıya verilen bağlantıları da analiz ederek geçersiz ya da artık mevcut olmayan bağlantıları raporlar ve size bu hataları düzeltme imkanı tanır.
3. Scriptin Kurulumu
Bu örnekte, Debian 12'ye gerekli paketleri (php8.2 ve link kontrol scriptini phar formatında) kurarak scripti Linux konsolundan çalıştıracağız.
apt install php php-xml
apt install wget
wget https://github.com/dantleech/fink/releases/download/0.10.3/fink.phar
4. Kullanım Örneği
Kendi domain’inizi domain.tld yerine yazın ve gerektiğinde rapor dosyasının yolunu ayarlayın.
php /root/fink.phar https://domain.tld -x0 -o /root/report.json
Script çalışmayı tamamladığında bir rapor oluşturacaktır. Ayrıca, sitenizdeki sayfalardaki bağlantıların gerçek zamanlı olarak nasıl tarandığını gözlemleyebilirsiniz.
Örneğin, 5000 sayfalık bir site 14 dakika içinde tarandı, bu da çevrimiçi hizmetlerin çoğuna göre oldukça hızlıdır.
4.1 Rapor Dosyasını Analiz Etme
apt install jq
cat /root/report.json | jq -c '. | select(.status==404) | {url: .url, referrer: .referrer}' | jq
Rapor dosyasında, bozuk bağlantıların bulunduğu sayfalar şu şekilde görüntülenir:
4.1.1 İyi Bağlantılar Hariç Tümünü Görüntüle
cat /root/report.json | jq -c '. | select(.status!=200) | {url: .url, referrer: .referrer}' | jq
Bu örnekte, yalnızca 200 kodu içermeyen tüm sayfalar görüntülenecektir.
İçeriğin sıklıkla güncellenmesine bağlı olarak, bağlantıları düzenli kontrol ve analiz etmek, sitenizi ziyaretçiler için daha erişilebilir hale getirir.