Xóa bỏ index.php trong Codeigniter

Hi all! Xin nhờ các Pro giúp đỡ: M có làm theo hướng dẫn: tạo file .htaccess với nội dung:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /webmerchandise/

RewriteCond %{REQUEST_URI} ^system.*
RewriteRule ^(.*)$ /index.php?/$1 [L]

RewriteCond %{REQUEST_URI} ^application.*
RewriteRule ^(.*)$ /index.php?/$1 [L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L]
</IfModule>

<IfModule !mod_rewrite.c>
ErrorDocument 404 /index.php
</IfModule>

/webmerchandise/ là tên project của mình. Mình cũng chỉnh trong file config.php:

$config['uri_protocol'] = 'REQUEST_URI';

$config['index_page'] = '';

Mình cũng đã bật:

LoadModule rewrite_module modules/mod_rewrite.so (httpd-conf).

Mình test thử như sau:

http://localhost/Webmerchandise/welcome

thì lỗi 404 Page Not Found Nhưng khi m thay bằng:

 http://localhost/webmerchandise/welcome

thì chạy bình thường. Thông thường trong url m thấy không phân biệt chữ hoa chữ thường ('w' and 'W'). Các bác giải thích giúp em với. Thanks all so much.

Được hỏi 1 năm trước
Bình Luận (1)
Giang River  Giang River đã bình luận 1 năm trước

Nếu webmerchandise là thư mục chứa CodeIgniter framework thì bạn cần bật mod_speling của Apache.

Bình chọn bởi: Huy Pro, Minh Tran, Tram Anh, Hà Anh, Lê Huyền Trang, Đinh Quang Huy, Nam Nguyễn, Huyền SuBy, Thu Hang, Hani Pham, Phạm Huy, Vũ Văn Tân, Anh Tuấn, Khuê Kana, Hữu Hạnh, Nguyễn Văn Tuấn, Lê Anh, Lê Bình, Vũ Văn Tuấn, Hanh Kute, Phuong Jenny, Tony Huynh, Linh Vũ

Câu hỏi của bạn liên quan tới cách cấu hình Apache web server thay vì Code Igniter. Nếu bạn muốn cả hai URL sử dụng webmerchandiseWebmerchandise đều hoạt động thì bạn cần kích hoạt mod_speling của Apache.

Nếu bạn sử dụng Linux thì thêm dòng code phía cuối của file /etc/httpd/conf/httpd.conf:

LoadModule speling_module modules/mod_speling.so

<IfModule mod_speling.c>
  CheckSpelling On
  CheckCaseOnly On
</IfModule>

Sau đó khởi động lại Apache:

sudo service httpd restart
Trả lời 9 giờ trước

Thêm Trả Lời