Bagaimana cara mengaktifkan flag pemeliharaan versi 1.9 dengan akses admin
14
Karena saya tidak melihat Mode Pemeliharaan di UI versi 1.9 System > Configuration, saya menjatuhkan maintenance.flagfile di root situs. Namun itu juga memblokir akses panel admin saya. Dapatkah seseorang memberi tahu saya cara mempertahankan mode pemeliharaan situs dengan akses admin?
Ada beberapa ekstensi yang melakukan hal itu. Namun mereka masih hanya solusi sementara karena maintenance.flagfungsi masih ada. Untuk menghapusnya, Anda harus secara manual mengedit file 'index.php' yang pada gilirannya dapat menyebabkan masalah dengan peningkatan.
Ini adalah bagaimana fungsi 'maintenance.flag' diimplementasikan dalam 'index.php'. Namun karena Anda perlu mengedit 'index.php' Anda juga dapat melakukan sesuatu yang lebih rumit, seperti:
Harap dicatat kode di atas adalah hack cepat dan kotor. Anda dapat mengembangkannya lebih lanjut, karena saya baru memeriksa apakah '/ admin /' ada di url.
Sangat berguna bagi mereka yang menggunakan load balancer AWS Ec2
asherrard
1
Anda dapat mengatur halaman perawatan Anda sendiri dan menggunakan ErrorDocument 503 untuk mengirim halaman pemeliharaan. Kecualikan alamat IP Anda melalui RewriteCond sehingga Anda dapat mengakses halaman itu dan jangan diarahkan:
RewriteEngineOnErrorDocument503/errors/503.phpRewriteCond%{REMOTE_ADDR}!^4.3.2.1[NC]#your IPRewriteCond%{REMOTE_ADDR}!^4.3.2.2[NC]#other IP if neededRewriteCond%{REMOTE_ADDR}!^127.0.0.1[NC]#localhost maybe needed depending on server setupRewriteCond%{REQUEST_URI}!^/errors/503.phpRewriteCond%{REQUEST_URI}!^/media/RewriteCond%{REQUEST_URI}!^/images/RewriteCond%{REQUEST_URI}!^/css/RewriteCond%{REQUEST_URI}!^/js/RewriteCond%{REQUEST_URI}!^/skin/RewriteCond%{REQUEST_URI}!^/index.php
RewriteCond%{REQUEST_URI}!^/admin #your admin pathRewriteCond%{REQUEST_URI}!^/admin/RewriteRule^(.*) http://www.yourwebsite.com/errors/503.php [L,R=503]
Harap perhatikan bahwa layanan tambahan mungkin diperlukan untuk memasukkan layanan tambahan seperti Gateway Pembayaran untuk pengujian.
Dan jika Anda di belakang penyeimbang beban yang melewati IP klien di header HTTP_X_FORWARDED_FOR pastikan untuk memperhitungkannya seperti ini:
sumber
Anda dapat mengatur halaman perawatan Anda sendiri dan menggunakan ErrorDocument 503 untuk mengirim halaman pemeliharaan. Kecualikan alamat IP Anda melalui RewriteCond sehingga Anda dapat mengakses halaman itu dan jangan diarahkan:
Harap perhatikan bahwa layanan tambahan mungkin diperlukan untuk memasukkan layanan tambahan seperti Gateway Pembayaran untuk pengujian.
sumber