Ölü bağlantı tespitini otomatikleştirme | Hahwul


Deadfinder ve Github Eylemlerini Sakinsiz Bağlantı Yönetimi için Kullanma

Ölü bir bağlantı veya kırık bağlantı, bir köprü, kaldırılmış veya artık mevcut olmayan bir web sayfasına işaret ettiğinde oluşur. Sadece rahatsızlığın ötesinde, bu ölü bağlantılar kullanıcı deneyimini önemli ölçüde düşürebilir, web sitenizin SEO’suna zarar verebilir ve güvenlik açıkları getirebilir. Örneğin:

  • Kimlik Yardım Riskleri: Bir alan adı sona erdiğinde, meşru bir site bekleyen kullanıcılardan hassas bilgileri yakalamak için sahte sayfalar oluşturabilen kötü niyetli varlıklar tarafından satın alınabilir.
  • Kötü Yazılım Dağıtım: Bazen, bağlantılı bir kaynak kaldırılırsa, benzer bir adlandırılmış kötü amaçlı site yerini alabilir ve potansiyel olarak şüphesiz ziyaretçilerin kötü amaçlı yazılım indirmesine yol açabilir.
  • Güven kaybı: Ölü bağlantılarla sık sık karşılaşmalar, kullanıcılarının kullanıcılarının kullanıcıları zararlı alternatiflere yönlendirmeleri için kullanılabilecek ihmal veya modası geçmiş bilgileri önererek kullanıcı güvenini aşındırabilir.

Bu nedenle, bağlantı bütünlüğünü korumak sadece sitenizin profesyonelliğini ve kullanılabilirliğini korumakla kalmaz, aynı zamanda ziyaretçilerinizi potansiyel güvenlik tehditlerinden korumada da kritik bir rol oynar.

Deadfinder nedir?

Deadfinder, web yöneticilerinin ve blogcuların ölü bağlantılar bularak sitelerinin bütünlüğünü sağlam tutmasına yardımcı olmak için tasarlanmış çok yönlü bir araçtır. Bu arada, bu araç kendi web sitemi yönetmek için benim tarafımdan oluşturuldu.

Deadfinder, GitHub eylemlerini destekler ve aşağıdaki iş akışı koduyla kolayca çalıştırmanıza izin verir:

steps:
- name: Run DeadFinder
  uses: hahwul/deadfinder@1.5.0
  # or uses: hahwul/deadfinder@latest
  id: broken-link
  with:
    command: sitemap # url / file / sitemap
    target: https://www.hahwul.com/sitemap.xml
    # timeout: 10
    # concurrency: 50
    # silent: false
    # headers: "X-API-Key: 123444"
    # worker_headers: "User-Agent: Deadfinder Bot"
    # include30x: false
    # user_agent: "Apple"
    # proxy: "http://localhost:8070"

- name: Output Handling
  run: echo '${{ steps.broken-link.outputs.output }}'

Deadfinder’ı GitHub Eylemleriyle Entegre Etme

GitHub Eylemleri, GitHub tarafından sağlanan ve yazılım geliştirme iş akışlarınızı doğrudan deponuzda otomatikleştirmenizi sağlayan bir CI/CD (sürekli entegrasyon/sürekli dağıtım) aracıdır. Deadfinder ile ölü bağlantı tespitini otomatikleştirmek için GitHub eylemlerinden nasıl yararlanabileceğiniz aşağıda açıklanmıştır:

---
name: DeadLink
on:
  workflow_dispatch:
jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - name: Find Broken Link
        uses: hahwul/deadfinder@1.5.0
        id: broken-link
        with:
          command: sitemap
          target: https://hahwul.com/sitemap.xml

      - name: Create Markdown Table from JSON
        id: create-markdown-table
        run: |
          echo "## DeadLink Report" > deadlink_report.md
          echo "" >> deadlink_report.md
          echo "| Target URL | Deadlink   |" >> deadlink_report.md
          echo "|------------|------------|" >> deadlink_report.md
          echo '${{ steps.broken-link.outputs.output }}' | jq -r 'to_entries[] | .key as $k | .value[] | "| \($k) | \(.) |"' >> deadlink_report.md

      - name: Read Markdown Table from File
        id: read-markdown-table
        run: |
          table_content=$(cat deadlink_report.md)
          echo "TABLE_CONTENT<> $GITHUB_ENV
          echo "$table_content" >> $GITHUB_ENV
          echo "EOF" >> $GITHUB_ENV

      - name: Create an issue
        uses: dacbd/create-issue-action@main
        with:
          token: ${{ secrets.GITHUB_TOKEN }}
          title: DeadLink Issue
          body: ${{ env.TABLE_CONTENT }}

Bu kod, ölü bağlantıları tanımlamak için belirtilen koşullara göre Deadfinder’ı çalıştırır, bunları Markdown formatına dönüştürür ve daha sonra kullanıcıların farkında olabilmeleri için bunları bir GitHub sorunu olarak yayınlar. Bu, şimdi baktığınız siteye de uygulanır ve birçok makale olduğundan, ölü bağlantıları kaldırmak için periyodik olarak çalıştırıyorum.


Github iş akışı geçmişi


Deadlinks bulundu ve bildirdi!

Çözüm

Bu basit yöntemle sitenizin kalitesini ve güvenliğini kolayca artırabilirsiniz. Bir deneyin ve bu tekniği kullanarak sitenizi yönetin 🙂



Source link