Cara Menyembunyikan Halaman Login, Register, dan Lainnya pada Laravel dari Hasil Pencarian Google
Zachran Razendra
Author
Cara Menyembunyikan Halaman Login, Register, dan Lainnya pada Laravel dari Google
Membuka akses login, register, atau halaman admin ke publik memang tidak diinginkan muncul di hasil pencarian Google. Berikut langkah‑langkah praktis yang dapat Anda terapkan pada proyek Laravel Anda.
1. Gunakan robots.txt
File robots.txt berada di root domain (misalnya example.com/robots.txt). Tambahkan aturan berikut:
User-agent: *
Disallow: /login
Disallow: /register
Disallow: /password/reset
Disallow: /admin
Catatan:
robots.txthanya memberi petunjuk kepada crawler. Tidak menjamin 100% halaman tidak terindeks.
2. Tambahkan Meta Tag noindex pada View
Pada blade view halaman yang ingin disembunyikan, sisipkan meta tag berikut di dalam <head>:
<meta name="robots" content="noindex, nofollow">
Jika Anda menggunakan layout utama, buatlah section khusus untuk halaman sensitif:
{{-- resources/views/layouts/app.blade.php --}}
<head>
...
@yield('meta-robots')
</head>
Lalu pada halaman login:
@section('meta-robots')
<meta name="robots" content="noindex, nofollow">
@endsection
3. Header HTTP X-Robots-Tag
Laravel memungkinkan menambahkan header melalui middleware. Buat middleware baru:
<?php
namespace App\Http\Middleware;
use Closure;
use Illuminate\Http\Request;
class NoIndexSensitivePages
{
public function handle(Request $request, Closure $next)
{
$response = $next($request);
$paths = ['/login', '/register', '/password/reset', '/admin'];
if (in_array($request->path(), $paths)) {
$response->headers->set('X-Robots-Tag', 'noindex, nofollow');
}
return $response;
}
}
Daftarkan middleware di app/Http/Kernel.php pada grup web.
4. Blokir via .htaccess (Apache) atau nginx
Jika server Anda menggunakan Apache, tambahkan di .htaccess:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^(login|register|password/reset|admin) - [F]
</IfModule>
Untuk Nginx, gunakan konfigurasi serupa:
location ~* ^/(login|register|password/reset|admin) {
return 403;
}
Peringatan: Cara ini memblokir akses manusia sekaligus bot. Gunakan hanya bila halaman memang tidak perlu diakses publik.
5. Gunakan Google Search Console
- Verifikasi properti situs Anda di Google Search Console.
- Buka menu Removals → New Request → masukkan URL yang ingin dihapus.
- Pilih Temporarily hide atau Clear cached URL.
Setelah itu, pastikan langkah‑langkah di atas sudah diterapkan agar Google tidak meng‑crawl ulang.
6. Tips Tambahan
- Hindari link internal yang menujuk ke halaman sensitif tanpa
rel="nofollow". - Jangan kirimkan URL ke sitemap. Pastikan file
sitemap.xmltidak mencantumkan/login,/register, dll. - Gunakan autentikasi yang kuat; meski halaman tidak terindeks, tetap penting untuk melindungi akses.
Kesimpulan
Mencegah halaman login, register, dan halaman admin muncul di hasil pencarian Google memerlukan kombinasi teknik:
- robots.txt untuk memberi petunjuk crawler.
- Meta tag noindex atau X‑Robots‑Tag untuk perintah eksplisit.
- Middleware Laravel agar header otomatis diterapkan.
- Pengaturan server (
.htaccess/nginx) bila diperlukan. - Google Search Console untuk menghapus yang sudah terindeks.
Dengan mengikuti langkah‑langkah tersebut, Anda dapat menjaga privasi halaman sensitif Laravel tanpa mengorbankan SEO situs utama.