URL không có HTML

Hãy nhớ rằng các tệp trang web của bạn phải có phần mở rộng tệp của chúng. . html chẳng hạn. Bằng cách này, trình duyệt của bạn có thể đọc chúng. Nếu bạn muốn ẩn phần mở rộng này, vui lòng sử dụng. htaccess, bạn có thể thêm các quy tắc của mình theo cách này chẳng hạn

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^.]+)$ $1.html [NC,L]

Gần đây tôi muốn xóa các tiện ích mở rộng khỏi trang web của mình để làm cho các URL thân thiện hơn với người dùng và công cụ tìm kiếm. Tôi tình cờ xem được các hướng dẫn về cách xóa tiện ích mở rộng .php khỏi trang PHP. Còn về .html thì sao? . Trong hướng dẫn này, tôi sẽ chỉ cho bạn cách thực hiện điều đó một cách dễ dàng, bằng cách chỉnh sửa tệp .htaccess

Cái gì là. tập tin htaccess

Tệp .htaccess là tệp ASCII đơn giản mà bạn tạo bằng trình soạn thảo văn bản như Notepad hoặc TextEdit. Tệp cho phép máy chủ biết những thay đổi cấu hình cần thực hiện trên cơ sở từng thư mục

Xin lưu ý rằng .htaccess là tên đầy đủ của tệp. Nó không phải là

RewriteRule ^([^\.]+)$ $1.html [NC,L]
1, nó chỉ đơn giản là .htaccess

Các tệp .htaccess ảnh hưởng đến thư mục chứa chúng và tất cả các thư mục con (thư mục con). Ví dụ: nếu có một tệp .htaccess nằm trong thư mục gốc của bạn là

RewriteRule ^([^\.]+)$ $1.html [NC,L]
5, nó sẽ ảnh hưởng đến
RewriteRule ^([^\.]+)$ $1.html [NC,L]
6,
RewriteRule ^([^\.]+)$ $1.html [NC,L]
7, v.v.…

Điều quan trọng cần nhớ là điều này có thể được bỏ qua. Nếu bạn không muốn một số lệnh .htaccess ảnh hưởng đến một thư mục cụ thể, hãy đặt một tệp .htaccess mới trong thư mục mà bạn không muốn bị ảnh hưởng bởi các thay đổi và xóa (các) lệnh cụ thể khỏi tệp mới

Đặc trưng

Với tệp .htaccess, bạn có thể

  • Chuyển hướng người dùng đến trang khác
  • Mật khẩu bảo vệ một thư mục cụ thể
  • Chặn người dùng theo IP
  • Ngăn chặn liên kết nóng hình ảnh của bạn
  • Viết lại URL
  • Chỉ định Tài liệu lỗi của riêng bạn

Trong hướng dẫn này, chúng tôi sẽ chỉ tập trung vào việc viết lại các URL

Xóa tiện ích mở rộng

Để xóa phần mở rộng .php khỏi tệp PHP, chẳng hạn như

wallpaper
2 thành
wallpaper
3, bạn phải thêm đoạn mã sau vào tệp .htaccess

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^\.]+)$ $1.php [NC,L]

Nếu bạn muốn xóa phần mở rộng .html khỏi tệp html, chẳng hạn như

wallpaper
6 thành
wallpaper
3, bạn chỉ cần thay đổi dòng cuối cùng từ mã ở trên để khớp với tên tệp

RewriteRule ^([^\.]+)$ $1.html [NC,L]

Đó là nó. Bây giờ bạn có thể liên kết các trang bên trong tài liệu HTML mà không cần thêm phần mở rộng của trang. Ví dụ

wallpaper

Thêm dấu gạch chéo ở cuối

Tôi nhận được nhiều yêu cầu hỏi cách thêm dấu gạch chéo ở cuối, ví dụ như.

wallpaper
8

Bỏ qua đoạn mã đầu tiên và chèn mã bên dưới. Bốn dòng đầu tiên đề cập đến việc loại bỏ phần mở rộng và dòng tiếp theo, 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 theo cách tương tự như được hiển thị ở trên. Đừng quên thay đổi mã nếu bạn muốn nó được áp dụng cho tệp HTML thay vì PHP

Một số người đã hỏi làm cách nào bạn có thể xóa tiện ích mở rộng khỏi cả tệp HTML và PHP. Tôi không có giải pháp cho điều đó. Tuy nhiên, bạn chỉ có thể thay đổi phần mở rộng của tệp HTML của mình từ .html hoặc

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]
0 thành .php và thêm mã để xóa phần mở rộng .php

Phần kết luận

Đối với những người không có nhiều kinh nghiệm với các tệp .htaccess, 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

Người dùng GoDaddy chú ý. Để xóa các tiện ích mở rộng, bạn cần bật

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]
4 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 là nội dung trùng lặp, hãy thêm thẻ meta

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]
5 vào tệp HTML của bạn

tôi có thể gỡ bỏ. HTML từ URL?

Các. tiện ích mở rộng html có thể dễ dàng bị xóa bằng cách chỉnh sửa. tệp htaccess .

Tại sao URL của tôi có HTML?

Đôi khi bạn sẽ thấy điều này với phần mở rộng tệp như. html cho biết đây là tệp tĩnh trên máy chủ có nội dung HTML . Nếu không có phần mở rộng, chẳng hạn như URL này, nó thường cho biết máy chủ đã tạo nội dung này.

Làm cách nào để xóa HTML khỏi URL trong Javascript?

tách('. html')[0]; . lịch sử. replaceState( null, null, link );

Làm cách nào để ẩn URL trong HTML?

Thay đổi "hiển thị" hoặc "mức độ hiển thị" . Thay đổi chế độ hiển thị của bạn thành "hidden" sẽ ẩn liên kết mà không ảnh hưởng đến bố cục trang. Mã của bạn cho giai đoạn này sẽ trông giống như. trưng bày. không ai. hiển thị. ẩn giấu.

Có đúng không khi đặt tên trang web bằng. htm hoặc. phần mở rộng HTML?

HTM là phần mở rộng tệp cho các trang HTML hoặc định dạng tệp. Tiện ích mở rộng HTML đã được ưu tiên vì trong hầu hết các máy chủ hoặc tổ chức được lưu trữ khi họ muốn giải quyết. chỉ các tệp html khi được yêu cầu trang web. Tệp mở rộng HTM không được ưu tiên cho các trang web ngày nay .

Làm cách nào để xóa HTML khỏi URL nginx?

Cách xóa tiện ích mở rộng html trong Nginx .
Chỉnh sửa cấu hình của trang web bằng lệnh sau. # vi /etc/nginx/site-available/example. com. conf. Ghi chú. Đường dẫn của tệp cấu hình có thể khác trong máy chủ của bạn. .
Thêm mã sau. viết lại ^(/. *)\. .
Khởi động lại dịch vụ Nginx để áp dụng các thay đổi. # systemctl khởi động lại nginx