Tôi biết câu hỏi này đã được hỏi trước đây nhưng có ai biết về cách tốt để che giấu phần mở rộng .html. Tôi đã thử nhiều mã và nhiều câu trả lời từ //stackoverflow.com/ nhưng không thấy kết quả. Đó là tôi hỏi bạn một lần nữa
Tôi đã có một trang web tĩnh và tôi muốn xóa tiện ích mở rộng để làm sạch URL của mình. Tôi đã làm việc với các tệp HTML tĩnh.
Trước khi loại bỏ phần mở rộng, URL sẽ đọc website.com/about.html
.
Với phần mở rộng bị xóa, nó sẽ trông giống như trang web.com/about. Hy vọng điều đó đã rõ ràng.
Tôi đã một tệp .htaccess và tôi đã thử nhiều mã nhưng nó không hoạt động. Đây là một số mã
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^[.*]\.html$ /$1 [L,R=301]
RewriteCond %{THE_REQUEST} \ /[.+/]?index[\.html]?[\?.*]?\ [NC]
RewriteRule ^[.+/]?index[\.html]?$ /%1 [R=301,L]
RewriteCond %{ENV:REDIRECT_STATUS} ^$
RewriteRule ^[.+]\.html$ /$1 [R=301,L]
RewriteCond %{SCRIPT_FILENAME}.html -f
RewriteRule [^/]$ %{REQUEST_URI}.html [QSA,L]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.html\ HTTP/
RewriteRule ^index\.html$ //%{HTTP_HOST}/ [R=301,L]
RewriteEngine On
RewriteBase /
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteRule ^[.*]$ $1.html [NC,L]
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.html -f
RewriteRule ^[.*]$ $1.html
RewriteBase /
RewriteEngine on
RewriteRule ^[.*]\.htm$ $1.html [nc]
RewriteCond %{REQUEST_FILENAME}.html -f
RewriteRule !.*\.html$ %{REQUEST_FILENAME}.html [L]
Tuy nhiên tôi không thấy bất kỳ kết quả nào ... :[
Này, hôm nay tôi sẽ cho bạn biết cách ẩn tiện ích mở rộng .html trong thanh địa chỉ trang web? Nếu bạn muốn biết, hãy tiếp tục đọc bài viết này.How To Hide .HTML Extension In Website Address Bar? If you want to know, keep reading this post.
Trước hết, hãy để tôi nói với bạn rằng nhiều người tạo trang web của họ với HTML và PHP, v.v., nhưng khi nó xuất bản trang web của bạn, phần mở rộng .html được hiển thị trong thanh địa chỉ của trang web. Không nhìn tốt vào điều đó?
wallpaperThêm một dấu gạch chéo ở cuối
Tôi đã nhận được nhiều yêu cầu hỏi làm thế nào để thêm một dấu gạch chéo ở cuối, ví dụ:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^[[^\.]+]$ $1.php [NC,L]
2Bỏ qua đoạn trích đầu tiên và chèn mã bên dưới. Bốn dòng đầu tiên liên quan đến việc loại bỏ phần mở rộng và sau đây, với việc bổ sung dấu gạch chéo và chuyển hướng.
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^[[^/]+]/$ $1.php
RewriteRule ^[[^/]+]/[[^/]+]/$ /$1/$2.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} ![\.[a-zA-Z0-9]{1,5}|/]$
RewriteRule [.*]$ /$1/ [R=301,L]
Liên kết đến tệp HTML hoặc PHP giống như cách hiển thị ở trên. Don Tiết quên thay đổi mã nếu bạn muốn áp dụng cho tệp HTML thay vì PHP.
Một số người hỏi làm thế nào bạn có thể xóa tiện ích mở rộng khỏi cả hai tệp HTML và PHP. Tôi không có một giải pháp cho điều đó. Nhưng, bạn chỉ có thể thay đổi phần mở rộng của tệp HTML của mình từ
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^[[^\.]+]$ $1.html [NC,L]
1 hoặc RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^[[^\.]+]$ $1.php [NC,L]
4 thành RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^[[^\.]+]$ $1.html [NC,L]
0 và thêm mã để xóa tiện ích mở rộng RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^[[^\.]+]$ $1.html [NC,L]
0.Sự kết luận
Đối với những người không có kinh nghiệm với các tệp
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^[[^\.]+]$ $1.html [NC,L]
2, có một công cụ trực tuyến để tạo chúng. Nó rất hữu ích cho người dùng mới bắt đầu và dễ sử dụng.Cập nhật
Người dùng Godaddy chú ý: Để loại bỏ các phần mở rộng bạn cần để kích hoạt
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^[[^\.]+]$ $1.php [NC,L]
8 trước đó. Mã sẽ trông như thế này:Options +MultiViews
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^[[^\.]+]$ $1.php [NC,L]
Nếu bạn lo lắng rằng các công cụ tìm kiếm có thể lập chỉ mục các trang này dưới dạng nội dung trùng lặp, hãy thêm thẻ meta
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^[[^\.]+]$ $1.php [NC,L]
9 trong RewriteRule ^[[^\.]+]$ $1.html [NC,L]
0 của tệp HTML của bạn: