Ai giúp mình cái Rewrite URL PHP với

PDV

Newbie
Joined
Dec 26, 2015
Messages
13
Reactions
5
MR
0.172
Đang tự học php mà gặp lỗi này mò cả buổi vẫn không biết sai cái gì. @@
Mình có địa chỉ : http://localhost:8080/TEST/test.php?truyen=con-luan-ma-chu
giờ mình muốn đổi nó sang dạng http://localhost:8080/TEST/truyen/con-lon-ma-chu.html
file .htaccess :
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^truyen/([0-9]*).html test.php?truyen=$1
nó cứ bị lỗi này, mình đổi sang port 8080 cũng vẫn bị

1705562563184.png


mình chạy trên xampp nha. cảm ơn ạ
 
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule truyen test.php
mình đổi lại như này truy cập vẫn báo lỗi @@

1705562736432.png
 
Để thay đổi URL từ "http://localhost:8080/TEST/test.php?truyen=con-luan-ma-chu" thành "http://localhost:8080/TEST/truyen/con-lon-ma-chu.html", bạn có thể sử dụng các quy tắc rewrite URL trong cấu hình máy chủ web của bạn (thường là Apache HTTP Server hoặc Nginx).

Dưới đây là hướng dẫn cho Apache HTTP Server sử dụng module mod_rewrite:

  1. Đảm bảo rằng module mod_rewrite đã được kích hoạt trong cấu hình Apache. Bạn có thể kiểm tra bằng cách mở tệp cấu hình httpd.conf và xác định xem có dòng "LoadModule rewrite_module modules/mod_rewrite.so" không. Nếu không, hãy bỏ dấu "#" ở đầu dòng này và khởi động lại máy chủ Apache.
  2. Tạo hoặc chỉnh sửa tệp .htaccess trong thư mục gốc của ứng dụng (trong trường hợp này, /TEST/). Nếu tệp .htaccess chưa tồn tại, bạn có thể tạo tệp mới và thêm các quy tắc sau vào:
Code:
RewriteEngine On
RewriteRule ^truyen/([^/]+)/([^/]+)\.html$ test.php?truyen=$1-$2 [L]
  1. Lưu và khởi động lại máy chủ Apache.
    Bây giờ, URL "http://localhost:8080/TEST/truyen/con-lon-ma-chu.html" sẽ được chuyển hướng nội bộ đến "http://localhost:8080/TEST/test.php?truyen=con-luan-ma-chu", trong đó giá trị "con-luan-ma-chu" được trích xuất từ phần đường dẫn của URL.

    Lưu ý rằng để sử dụng rewrite URL, bạn cần quyền truy cập và quản lý cấu hình máy chủ web của mình. Nếu bạn đang sử dụng một máy chủ web khác, như Nginx, quy trình cấu hình sẽ khác nhau.

theo Chat GPT ;)
 
Chủ thớt nên định nghĩa lại cái router cho web, cái param có dấu hỏi được gọi là query param, cái còn lại là pathparam, path param thì nên dùng cho tài nguyên cụ thể, queryparam thì dùng cho tuỳ chọn bổ sung, lọc... nên việc chuyển như trên sau này sẽ khó mở rộng và sẽ rắc rối
Nếu đơn thuần chỉ vọc cho bik thì làm theo bạn domainrenet là ổn rồi
 

Announcements

Today's birthdays

Forum statistics

Threads
418,660
Messages
7,074,372
Members
170,751
Latest member
LuDiTu
Back
Top Bottom