Mengatasi Broken Link dengan Cloudflare

Broken Link adalah tautan yang rusak, artinya tautan yang ada di blog targetnya sudah tidak ada (error 404). Baik tautan di blog sendiri, atau eksternal (ke luar blog)

Dampak Broken Link Terhadap SEO

Tentunya akan sangat berpengaruh dan buruk sekali. Sebagai blogger tentunya tidak hanya dihadapkan kepada mesin, tapi terhadap pengguna (User Experience). Apa yang terjadi ketika beberapa pengguna mengklik tautan dan tautannya tidak ada. Sangat kecil kemungkinan mereka akan kembali lagi ke Blog kita.

Penyebab Broken Link

Diantara penyebab broken link, adalah

  1. Salah menulis / typo
  2. Permalink diganti
  3. URL postingan / file dihapus
  4. Pergantian directori untuk self Hosted
  5. Mengganti domain / Custom domain
  6. dll...

Custom Domain inilah yang sering terjadi di Blogger. ketika melakukan custom domain, banyak Link menggunakan domain blogspot yang tidak dirubah, sehingga memunculkan pengalihan seperti ini

Cara Cek Broken Link

Untuk mengecek apakah di Blog kita ada Broken Link atau tidak, kita bisa menggunakan tool online brokenlinkcheck.com

Solusi

Solusi terbaik tentunya dengan memperbaiki tautan tersebut, akan tetapi ketika terlalu banyak tautan yang memakan waktu editing, kita bisa gunakan dulu CloudFlare

Menggunakan Cloudflare untuk Broken Link

Ada beberapa langkah menggunakan cloudflare (tentunya blog harus sudah menggunakan DNS Cloudflare)

1. Buat Worker > Create a worker, copy script ini (edit yang diblok)

const OLD_URL = "blog.kangismet.net"
const NEW_URL = "kang-ismet.com"

async function handleRequest(req) {
  const res = await fetch(req)
  return rewriter.transform(res)
}

class AttributeRewriter {
  constructor(attributeName) {
    this.attributeName = attributeName
  }
  element(element) {
    const attribute = element.getAttribute(this.attributeName)
    if (attribute) {
      element.setAttribute(
        this.attributeName,
        attribute.replace(OLD_URL, NEW_URL),
      )
    }
  }
}

const rewriter = new HTMLRewriter()
  .on("a", new AttributeRewriter("href"))

addEventListener("fetch", event => {
  event.respondWith(handleRequest(event.request))
})

Kemudian Rename misal 301-mui

Buat Route > Add a route
Gunakan *namadomain.tld/* ganti dengan nama domain Anda, worker nya yang sudah dibuat ex: 301-mui

Video

Untuk lebih memahami prosesnya, silahkan tonton video ini

Semoga bermanfaat...

Berita Lebih Baru Berita Lebih Lama
  • Adhy Suryadi
    Profil: https://www.blogger.com/profile/06846144400647921085
    23 Mei, 2021

    Ini kan redirect domain lama ke baru ya kang? Ini memang perlu karena memang belum ada fasilitasnya di blogger.

    Kalau broken link dari url post gimana kang? Memang sudah ada fasilitasnya di blogger, tapi harus satu-satu.

    Adakah caranya seperti ini?

    • Kang Ismet
      Profil:https://www.blogger.com/profile/07706142952405337288
      23 Mei, 2021

      susah kayaknya kang, soalnya yang direplace beda2.. tapi kalau replacenya sama bisa aja, kaya misal di WP asalnya https://kang-ismet.com/post/bla... jadi https://kang-ismet.com/blog/blabla...
      const base = "https://kang-ismet.com";
      const statusCode = 301;
      async function handleRequest(request) {
      const url = new URL(request.url);
      let { pathname, search, hash } = url;
      if(pathname.indexOf("/post") != 0) {
      return fetch(request);
      }
      pathname = pathname.replace("/post/", "/blog/");
      const destinationURL = base + pathname + search + hash;
      return Response.redirect(destinationURL, statusCode)
      }
      addEventListener("fetch", async event => {
      event.respondWith(handleRequest(event.request))
      })

    • Ayo Belajar
      Profil:https://www.blogger.com/profile/15731741382807751310
      23 Mei, 2021

      routenya gimana kang? terus apa bisa mengganti search/label/?

    • Kang Ismet
      Profil:https://www.blogger.com/profile/07706142952405337288
      23 Mei, 2021

      untuk route *kang-ismet.com/post* kalau replace search/label dengan kode ini malah 404 nantinya

    • Ayo Belajar
      Profil:https://www.blogger.com/profile/15731741382807751310
      23 Mei, 2021

      ok makasih kang

    • AdiCore
      Profil:https://www.blogger.com/profile/05339758196749330712
      12 Juni, 2021

      itu script worker ya kang, apa itu untuk wp? kalau untuk blogger caranya bagaimana ya kang

  • Admin
    Profil: https://www.blogger.com/profile/08694528231248526313
    30 Mei, 2021

    hjls nya ngak diterapin di postingan blognya lagi kang?

    • Kang Ismet
      Profil:https://www.blogger.com/profile/07706142952405337288
      08 Juni, 2021

      variatif aja.. kadang pake kadang ngga hehe

  • AdiCore
    Profil: https://www.blogger.com/profile/05339758196749330712
    07 Juni, 2021

    apa cara ini juga bisa di terapkan untuk mencari dan mereplace url?

    • AdiCore
      Profil:https://www.blogger.com/profile/05339758196749330712
      07 Juni, 2021

      kalau ingin bulk rewrite url nya bagaimana ya mas pada bagian ini const OLD_URL =?

    • Kang Ismet
      Profil:https://www.blogger.com/profile/07706142952405337288
      08 Juni, 2021

      kalau untuk bulk saya belum explore lagi, untuk replace coba gunakan worker yang dibawah... saya sudah tulis menjawab kang Adhy

    • AdiCore
      Profil:https://www.blogger.com/profile/05339758196749330712
      08 Juni, 2021

      saya menanyakan soal bulk rewrite untuk mengubah domain gambar custom di blogger yang semula 1.bp.blogspot.com, 2.bp.blogspot.com, 3.bp.blogspot.com, 4.bp.blogspot.com, menjadi seperti ini https://www.kang-ismet.com/image. yang sudah di buatkan tutorialnya di blog marwanto606

    • Kang Ismet
      Profil:https://www.blogger.com/profile/07706142952405337288
      08 Juni, 2021

      berarti tinggal modifikasi saja script Membuat CDN Image dari blog Marwanto

    • Kang Ismet
      Profil:https://www.blogger.com/profile/07706142952405337288
      08 Juni, 2021

      atau ujicoba script ini dengan domain yang sama misal tambah /p jadi /page

    • AdiCore
      Profil:https://www.blogger.com/profile/05339758196749330712
      08 Juni, 2021

      yang tutorial dari marwanto606 tidak perlu dimodifikasi. hanya membuat workers lagi sama seperti tutorial kang ismet pada postingan ini dan routenya juga sama. namun berhubung pengaturan route-nya di cloudflare hanya boleh satu tidak boleh ada duplikat route untuk redirect 301 punya mas mungkin tidak perlu digunakan lagi

    • AdiCore
      Profil:https://www.blogger.com/profile/05339758196749330712
      08 Juni, 2021

      kalau untuk redirect untuk kasus /p/ ke /page/ atau /search/label/ ke /category/ sepertinya tidak bisa saat ini selalu terjadi error 404

    • AdiCore
      Profil:https://www.blogger.com/profile/05339758196749330712
      08 Juni, 2021

      script rewrite gambar blogger sama seperti tutorial yang kang ismet buat hanya ada perubahan seperti

      const OLD_URL = "1.bp.blogspot.com"
      const NEW_URL = "kang-ismet.com/image"

      dan pada bagian const rewriter = new HTMLRewriter(), diubah seperti ini

      const rewriter = new HTMLRewriter()
      .on("a", new AttributeRewriter("href"))
      on("link", new AttributeRewriter("href"))
      .on("img", new AttributeRewriter("src"))
      .on("a", new AttributeRewriter("style"))
      .on("a", new AttributeRewriter("src"))
      .on("meta", new AttributeRewriter("content"))

    • AdiCore
      Profil:https://www.blogger.com/profile/05339758196749330712
      08 Juni, 2021

      apa cara bulk domainnya seperti ini ya kang ?

      const OLD_URL = "1.bp.blogspot.com , 2.bp.blogspot.com , 3.bp.blogspot.com , 4.bp.blogspot.com"

  • AdiCore
    Profil: https://www.blogger.com/profile/05339758196749330712
    08 Juni, 2021

    oh ada yang salah kang pada bagian, const rewriter = new HTMLRewriter()

    seharusnya itu seperti ini

    .on("a , link", new AttributeRewriter("href"))
    .on("img", new AttributeRewriter("src"))
    .on("a", new AttributeRewriter("style"))
    .on("a", new AttributeRewriter("src"))
    .on("meta", new AttributeRewriter("content"))

    • Kang Ismet
      Profil:https://www.blogger.com/profile/07706142952405337288
      08 Juni, 2021

      kalau sistem rewrite seperti ini asset harus ada, natinya malah 404

    • AdiCore
      Profil:https://www.blogger.com/profile/05339758196749330712
      08 Juni, 2021

      itu semua ada dalam website saya mungkin untuk pengguna amp kang ismet bisa menambahkannya

  • Unknown
    Profil: https://www.blogger.com/profile/12535636567303096917
    24 Juni, 2021

    bermanfaat banget mas, selain blog ada cara membedakan iphone xs asli dan palsu yang bisa di pelajari juga

  • Nurul Huda
    Profil: https://www.blogger.com/profile/15643881846047476166
    26 Juni, 2021

    Salam kenal kang ismet

  • Cepy Hidayaturrahman
    Profil: https://www.blogger.com/profile/00546878210407027534
    10 Juli, 2021

    Waah, happy banget saya ketemu sama Kang Ismet lagi 😂😂 gilaaa, blog Kang Ismet udah saya ikutin dari zaman saya kuliah di sekitar 2012-2013, kemudian sepertinya sempet vakum ya Kang?

    Dan sekarang gak kerasa saya udah kerja dan punya anak :") malem ini lagi mulai otak-atik blog lagi, dan tetiba inget Kang Ismet. Eh, blog Kang Ismet reborn ternyata!!!

    Mantapp, lanjutkan, Kang! Stay safe & stay healthy!

  • AdiCore
    Profil: https://www.blogger.com/profile/05339758196749330712
    14 April, 2022

    ini kang, saya sudah temukan kode custom permalink dan rewrite canonicalnya juga. untuk routenya hanya seperti ini https://www.domain.com/test-page

    addEventListener("fetch", event => {
    const request = event.request
    event.respondWith(handleRequest(event))
    })
    const OLD_URL = "https://www.domain.com/p/test.html";
    const NEW_URL = "https://www.domain.com/test-page";
    class AttributeRewriter {
    constructor(attributeName) {
    this.attributeName = attributeName
    }
    element(element) {
    const attribute = element.getAttribute(this.attributeName)
    if (attribute) {
    element.setAttribute(
    this.attributeName,
    attribute.replace(OLD_URL, NEW_URL)
    )
    }
    }
    }
    async function handleRequest(req) {
    const url = 'https://www.domain.com/p/test.html'
    const res = await fetch(url)

    return new HTMLRewriter()
    .on("link", new AttributeRewriter("href"))
    .on("meta", new AttributeRewriter("content"))
    .transform(res)
    }

    • İlkay Gürler
      Profil:https://www.blogger.com/profile/05277513707502417201
      20 April, 2022

      hi mate,

      https://www.marwanto606.com/page/contact

      Do you have the cloudflare workers code running on your page?

  • kaylemcdaniel
    Profil: https://www.blogger.com/profile/03237804826830717923
    24 Mei, 2022

    Assalamualaikum, halo kang/mas ismet, kenapa di home page website ada thumbnail, tapi pas saya klik kok tidak ada. Itu bagaimana tolong di beritahu :)

  • E-commerce
    Profil: https://www.blogger.com/profile/14984774519959845138
    19 Maret, 2023

    Bisa hbungi email sya kang? Ada bbrp hal penting yg perlu sya tanyakan
    [email protected]

    • Kang Ismet
      Profil:https://www.blogger.com/profile/07706142952405337288
      23 Maret, 2023

      Contact saya aja via Form https://tutorial.kang-ismet.com/contact.html

Tambahkan Komentar
comment url
Terima kasih telah berkomentar di Blog Kang Ismet.
  • Untuk menyisipkan Gambar, Kode, atau Kutipan silahkan klik Tab Sisipkan di atas.
  • Emoji yang bisa digunakan pada komentar :), :D, :( <3, :love dan :top
  • Untuk melihat Komentar yang telah ditambah sisipan kunjungi DEMO
Masukkan URL Gambar atau Potongan Kode, atau Quote, lalu klik tombol yang kamu inginkan untuk di-parse. Klik tombol Salin Kode! lalu paste ke kolom komentar.


image quote pre code
29 Komentar