Mengatasi 404 not found di codeigniter

Codeigniter framework open source, dapat digunakan secara gratis dan dikembangkan. namun akan mengalami 404 not found di codeigniter saat pindah hosting atau upload dari xampp ke hosting.

Mengatasi 404 not found di codeigniter

1. Sesuaikan versi PHP di panel hosting dengan codeigniter

versi codeigniter tidak support dengan php yang dipilih pada panel hosting. sebelum setting di panel hosting, silahkan pastikan versi codeigniter yang anda gunakan.

Codeigniter 4 ( gunakan PHP versi 7.2 atau atasnya), sedangkan Codeigniter 3 (gunakan PHP versi 5.6). jika sudah mengetahuinya silahkan sesuaikan:

Login cpanel > PHP Selector > pilih versi php dan klik set as current

2. Periksa .htaccess di codeigniter

Pastikan terdapat file .htaccess di codeigniter, cek melalui file manager pada panel hosting. tambahkan .htaccess sesuai berikut:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]

Atau dapat menggunakan file .htaccess lengkapnya, berikut:

[sociallocker id=”5722″]

# Disable directory browsing
Options All -Indexes

# ----------------------------------------------------------------------
# Rewrite engine
# ----------------------------------------------------------------------

# Turning on the rewrite engine is necessary for the following rules and features.
# FollowSymLinks must be enabled for this to work.
<IfModule mod_rewrite.c>
	Options +FollowSymlinks
	RewriteEngine On

	# If you installed CodeIgniter in a subfolder, you will need to
	# change the following line to match the subfolder you need.
	# http://httpd.apache.org/docs/current/mod/mod_rewrite.html#rewritebase
	# RewriteBase /

	# Redirect Trailing Slashes...
	RewriteCond %{REQUEST_FILENAME} !-d
    	RewriteRule ^(.*)/$ /$1 [L,R=301]

	# Rewrite "www.example.com -> example.com"
	RewriteCond %{HTTPS} !=on
	RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
	RewriteRule ^ http://%1%{REQUEST_URI} [R=301,L]

	# Checks to see if the user is attempting to access a valid file,
    # such as an image or css document, if this isn't true it sends the
    # request to the front controller, index.php
	RewriteCond %{REQUEST_FILENAME} !-f
	RewriteCond %{REQUEST_FILENAME} !-d
	RewriteRule ^(.*)$ index.php/$1 [L]

	# Ensure Authorization header is passed along
    RewriteCond %{HTTP:Authorization} .
    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
</IfModule>

<IfModule !mod_rewrite.c>
    # If we don't have mod_rewrite installed, all 404's
    # can be sent to index.php, and everything works as normal.
    ErrorDocument 404 index.php
</IfModule>

# Disable server signature start
    ServerSignature Off
# Disable server signature end

[/sociallocker]

2 solusi diatas, dapat Mengatasi 404 not found di codeigniter dengan mudah.

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *