Sedang mencari default .htaccess CMS populer seperti WordPress, Joomla, Drupal, hingga framework Laravel? Maka kalian bisa menyalin kode default .htaccess yang ada di halaman ini.
Jika saat ini di folder kalian sudah ada file .htaccess, disarankan untuk rename file tersebut, misalnya .htaccess.old, kemudan membuat file .htaccess baru yang di isi dengan default htaccess yang ada di halaman ini.
Sebelum lanjut ke daftar default .htaccess, perlu diketahui bahwa komentar atau comment pada file htaccess tidak ditambahkan.
Jika ingin menggunakan default htaccess yang disertai dengan komentar, disarankan untuk mengambil dari website penyedia CMS atau Framework resminya. Misal https://wordpress.org/documentation/article/htaccess/ untuk file default .htaccess WordPress.
Tambahkan kode .htaccess ini di folder utama instalasi WordPress. Misalnya jika kalian menggunakan domain namaweb.site di hosting, kemudian WordPress dapat diakses melalui https://namaweb.site, maka file .htaccess ini bisa ditambahkan ke folder public_html
RewriteEngine OnRewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]RewriteBase /RewriteRule ^index\.php$ - [L]RewriteCond %{REQUEST_FILENAME} !-fRewriteCond %{REQUEST_FILENAME} !-dRewriteRule . /index.php [L]RewriteEngine OnRewriteBase /RewriteRule ^index.php$ - [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} -f [OR]RewriteCond %{REQUEST_FILENAME} -dRewriteRule ^ - [L]RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L]RewriteRule ^([_0-9a-zA-Z-]+/)?(.*.php)$ $2 [L]RewriteRule . index.php [L]RewriteEngine OnRewriteBase /RewriteRule ^index.php$ - [L]
RewriteRule ^wp-admin$ wp-admin/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} -f [OR]RewriteCond %{REQUEST_FILENAME} -dRewriteRule ^ - [L]RewriteRule ^(wp-(content|admin|includes).*) $1 [L]RewriteRule ^(.*.php)$ $1 [L]RewriteRule . index.php [L]Untuk laravel, maka perlu menambahkan 2 file .htaccess, satu di folder utama instalasi (public_html), kemudian satunya lagi berada didalam folder public (public_html/public).
Untuk .htaccess di folder utama instalasi, kalian bisa menggunakan kode ini
<IfModule mod_rewrite.c>Options +FollowSymLinksRewriteEngine On
RewriteCond %{REQUEST_URI} !^/public/
RewriteCond %{REQUEST_FILENAME} !-dRewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /public/$1 RewriteRule ^(/)?$ public/index.php [L] </IfModule>Selanjutnya didalam folder public, tambahkan .htaccess ini
<IfModule mod_rewrite.c> <IfModule mod_negotiation.c> Options -MultiViews -Indexes </IfModule>
RewriteEngine On
RewriteCond %{HTTP:Authorization} . RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_URI} (.+)/$ RewriteRule ^ %1 [L,R=301]
RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^ index.php [L]</IfModule>Apabila website laravel kalian diinstall dalam subfolder, misalnya wpgan.com/laravel dan .htaccess default sebelumnya tidak berfungsi, maka kalian bisa menggunakan .htaccess berikut ini pada folder instalasi laravel
<IfModule mod_rewrite.c><IfModule mod_negotiation.c> Options -MultiViews</IfModule>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -d [OR]RewriteCond %{REQUEST_FILENAME} -fRewriteRule ^ ^$1 [N]
RewriteCond %{REQUEST_URI} (\.\w+$) [NC]RewriteRule ^(.*)$ public/$1
RewriteCond %{REQUEST_FILENAME} !-dRewriteCond %{REQUEST_FILENAME} !-fRewriteRule ^ server.php</IfModule>Sama seperti default .htaccess WordPress, tambahkan .htaccess CodeIgniter ini di folder utama instalasi website kalian.
RewriteEngine OnRewriteCond %{REQUEST_FILENAME} !-fRewriteCond %{REQUEST_FILENAME} !-dRewriteRule ^(.*)$ index.php/$1 [L]Options +FollowSymLinks RewriteEngine On RewriteCond %{QUERY_STRING} base64_encode[^(]*([^)]*) [OR] RewriteCond %{QUERY_STRING} (<|<)([^s]*s)+cript.*(>|>) [NC,OR] RewriteCond %{QUERY_STRING} GLOBALS(=|[|%[0-9A-Z]{0,2}) [OR] RewriteCond %{QUERY_STRING} _REQUEST(=|[|%[0-9A-Z]{0,2}) RewriteRule .* index.php [F]
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] RewriteCond %{REQUEST_URI} !^/index.php RewriteCond %{REQUEST_URI} /component/|(/[^.]*|.(php|html?|feed|pdf|vcf|raw))$ [NC] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule .* index.php [L]<IfModule mod_rewrite.c>RewriteEngine OnRewriteCond %{REQUEST_FILENAME} !-fRewriteCond %{REQUEST_FILENAME} !-dRewriteRule . index.php [L]</IfModule>Untuk .htaccess ini bisa digunakan pada hampir semua CMS atau Framework dan berfungsi untuk mengarahkan website ke https ketika diakses menggunakan http.
Tambahkan kode berikut ini dibaris paling akhir file default .htaccess
RewriteCond %{HTTPS} offRewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]DirectoryIndex index.php php_value memory_limit 512M php_value max_execution_time 18000 php_flag magic_quotes_gpc off php_flag session.auto_start off php_flag suhosin.session.cryptua off php_flag zend.ze1_compatibility_mode Off SecFilterEngine Off SecFilterScanPOST Off SSLOptions StdEnvVars Options +FollowSymLinks RewriteEngine on RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] RewriteCond %{REQUEST_URI} !^/(media|skin|js)/ RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-l RewriteRule .* index.php [L] AddDefaultCharset Off ExpiresDefault "access plus 1 year" Order allow,deny Allow from all.htaccess ini digunakan untuk mengalihkan akses otomatis menggunakan www. Jika menggunakan ini, pastikan www pada domain kalian bisa diakses dan mengarah ke server yang sama.
RewriteEngine On RewriteCond %{HTTP_HOST} !^www\. [NC] RewriteRule ^(.*) http://www.%{HTTP_HOST}/$1 [R=301,QSA,L]Itulah beberapa default .htaccess yang digunakan pada beberpa CMS populer yang bisa digunakan jika kalian kehilangan file .htaccess default pada website yang sudah kalian buat.
KOMENTAR
Memuat...