Cách ẩn phần mở rộng url trong php?

Đôi khi, điều quan trọng là phải xóa -hoặc ẩn- phần mở rộng tệp của tập lệnh bạn sử dụng. Bảo mật do tối nghĩa có thể là lý do đó, nếu bạn không muốn người khác biết bạn đang sử dụng ngôn ngữ tập lệnh nào cho trang web của mình hoặc cho các máy chủ lưu trữ trang web tĩnh. Ví dụ này sẽ ẩn tiện ích mở rộng

Code language: HTML, XML [xml]
3 bằng cách sử dụng Mô-đun viết lại URL IIS, trong một trang web sẵn sàng sử dụng. cấu hình &. htaccess ví dụ. tiện ích mở rộng ít URL hơn trong IIS

Mục lục hiển thị

1 Tại sao cần phải ẩn phần mở rộng tệp trong URL?

2 Ẩn. php tiện ích mở rộng với Mô-đun Viết lại URL trên IIS

2. 1 Đối với các yêu cầu đã chứa một. phần mở rộng php

2. 2 Mô phỏng Đa chế độ xem của Apache trong IIS bằng cách sử dụng. htaccess và Helicon Ape

3 Xóa. phần mở rộng php với. htaccess từ URL

Tại sao cần ẩn phần mở rộng tệp trong URL?

Tôi không phải là người thích bảo mật bằng cách tối nghĩa và tôi chưa bao giờ gặp phải điều này do kết quả của quá trình quét bảo mật

Bảo mật do che khuất là một lý do để ẩn phần mở rộng tệp trong URL, nếu bạn không muốn người khác biết ngôn ngữ tập lệnh nào bạn đang sử dụng cho trang web của mình. Tối ưu hóa Công cụ Tìm kiếm [SEO] là một lý do hợp lệ khác hoặc có lẽ bạn chỉ muốn ẩn phần mở rộng tệp mà không có lý do rõ ràng

Cũng không có lợi ích gì cho SEO, theo như tôi biết

Tuy nhiên, bạn có thể sử dụng kỹ thuật này để rút ngắn URL một chút. Nó loại bỏ bốn đến năm ký tự khỏi URL [“. php”, “. html”, “. aspx”]. Và một số người nói rằng một trang web hoạt động nhanh hơn vì máy chủ web có thể khớp các URL không có phần mở rộng với các thư mục [thư mục] nhanh hơn các URL có phần mở rộng với một tệp. Một số người nói. Tôi không có dữ liệu hoặc thông tin thêm về điều này

Ẩn giấu. tiện ích mở rộng php với Mô-đun viết lại URL trên IIS

Đây là ví dụ về Mô-đun viết lại URL IIS để bạn ẩn. phần mở rộng php trong URL

Kỹ thuật này còn được gọi là Multiviews hoặc Content Negotiation trong Apache và những người khác gọi nó là URL không có phần mở rộng. Xem bên dưới để biết ví dụ để sử dụng với. htaccess trong IIS

Giới thiệu về MultiViews hoặc đàm phán nội dung

Tác dụng của MultiViews như sau. nếu máy chủ nhận được yêu cầu cho /some/dir/foo, nếu /some/dir đã bật MultiViews và /some/dir/foo không tồn tại, thì máy chủ sẽ đọc thư mục tìm kiếm các tệp có tên foo. * và giả mạo một cách hiệu quả một bản đồ loại đặt tên cho tất cả các tệp đó, gán cho chúng cùng loại phương tiện và mã hóa nội dung mà nó sẽ có nếu khách hàng yêu cầu một trong số chúng theo tên. Sau đó, nó chọn kết quả phù hợp nhất với yêu cầu của khách hàng

Đặt phần viết lại sau vào tệp

Code language: HTML, XML [xml]
4 để ẩn. phần mở rộng php trong URL của bạn. Chà, ví dụ không thực sự che giấu. php khỏi URL, nhưng điều này cho phép bạn sử dụng URL không có phần mở rộng như

Code language: HTML, XML [xml]
5

Mô-đun Viết lại URL của IIS thêm phần

Code language: HTML, XML [xml]
3 vào URL ở chế độ nền

Code language: HTML, XML [xml]

Chuyển thành. htaccess vào web. cấu hình

Không cho phép truy cập trực tiếp vào tệp PHP trong wp-content/uploads/

SSL trong WordPress. làm cách nào để chuyển WordPress sang HTTPS?

Đối với các yêu cầu đã có chứa một. phần mở rộng php

Một ví dụ mở rộng hơn là chuyển hướng tất cả các yêu cầu với. php trong URL tới biến thể không có phần mở rộng của chúng. Vì vậy, khi một khách truy cập đi qua

Code language: HTML, XML [xml]
0, tiện ích mở rộng sẽ bị tước và anh ta sẽ được chuyển hướng đến

Code language: HTML, XML [xml]
1

Quy tắc Viết lại của chúng tôi ánh xạ yêu cầu cuối cùng trở lại chỉ mục. php mà không hiển thị phần mở rộng

Code language: HTML, XML [xml]

Luôn kiểm tra các ví dụ như vậy trước khi đưa vào sản xuất

Giả lập Apache Multiviews trong IIS bằng cách sử dụng. htaccess và Helicon Ape

Nếu bạn dùng. htaccess trong IIS, bạn có thể tạo hiệu ứng Multiviews tương tự để ẩn. phần mở rộng php. Để điều này xảy ra, bạn phải khai báo một vài điều kiện viết lại và viết lại các quy tắc [

Code language: HTML, XML [xml]
2 và

Code language: HTML, XML [xml]
3]. Điều thú vị là, điều này cũng sẽ hoạt động với Linux, Apache và mod_rewrite, làm cho giải pháp này trở nên đa nền tảng

Nhiều lượt xem. htaccess
Trong tệp

Code language: HTML, XML [xml]
4 của bạn, hãy thêm cấu hình viết lại sau.

# Enable the Rewrite Engine RewriteEngine On # Match a folder name, www.example.com/dev/ in this case RewriteBase /dev/ # SEO URL's for PHP files RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d # Hide the .php extension to prevent double content RewriteRule ^[.+].php$ $1 [NC,L,R=301] # Rewrite to, and present the contents of the .php files, # if there is no file extension in the URL. # For example: /foo shows /foo.php RewriteRule ^[[^/]+][?:/[.+]]?$ $1.php?[?2p=$2] [L]

Code language: Apache [apache]

.htaccess rules explanation:
Khối mã đầu tiên sử dụng hai lần kiểm tra

Code language: HTML, XML [xml]
2 để xác minh xem URL có phải là tệp hoặc thư mục hay không. Điều này hoàn chỉnh, rõ ràng và nhanh hơn là tạo ngoại lệ cho mọi loại tệp có thể.

Code language: HTML, XML [xml]
3 viết lại URL – phần lớn không chứa phần mở rộng tệp – thành tệp PHP có tên đó.

Mẫu

Code language: HTML, XML [xml]
7 được giải thích như sau

  1. Các ký tự kèm theo

    Code language: HTML, XML [xml]
    8 và

    Code language: HTML, XML [xml]
    9 đánh dấu phần đầu và phần cuối của chuỗi;
  2. Nhóm

    # Enable the Rewrite Engine RewriteEngine On # Match a folder name, www.example.com/dev/ in this case RewriteBase /dev/ # SEO URL's for PHP files RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d # Hide the .php extension to prevent double content RewriteRule ^[.+].php$ $1 [NC,L,R=301] # Rewrite to, and present the contents of the .php files, # if there is no file extension in the URL. # For example: /foo shows /foo.php RewriteRule ^[[^/]+][?:/[.+]]?$ $1.php?[?2p=$2] [L]

    Code language: Apache [apache]
    0 khớp với tên của tệp PHP là

    # Enable the Rewrite Engine RewriteEngine On # Match a folder name, www.example.com/dev/ in this case RewriteBase /dev/ # SEO URL's for PHP files RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d # Hide the .php extension to prevent double content RewriteRule ^[.+].php$ $1 [NC,L,R=301] # Rewrite to, and present the contents of the .php files, # if there is no file extension in the URL. # For example: /foo shows /foo.php RewriteRule ^[[^/]+][?:/[.+]]?$ $1.php?[?2p=$2] [L]

    Code language: Apache [apache]
    1. Và nó tìm thấy tất cả các ký tự cho đến dấu gạch chéo hoặc cuối chuỗi
  3. Khối

    # Enable the Rewrite Engine RewriteEngine On # Match a folder name, www.example.com/dev/ in this case RewriteBase /dev/ # SEO URL's for PHP files RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d # Hide the .php extension to prevent double content RewriteRule ^[.+].php$ $1 [NC,L,R=301] # Rewrite to, and present the contents of the .php files, # if there is no file extension in the URL. # For example: /foo shows /foo.php RewriteRule ^[[^/]+][?:/[.+]]?$ $1.php?[?2p=$2] [L]

    Code language: Apache [apache]
    2 cố gắng tìm dấu gạch chéo, theo sau là các ký tự khác và lưu nó dưới dạng

    # Enable the Rewrite Engine RewriteEngine On # Match a folder name, www.example.com/dev/ in this case RewriteBase /dev/ # SEO URL's for PHP files RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d # Hide the .php extension to prevent double content RewriteRule ^[.+].php$ $1 [NC,L,R=301] # Rewrite to, and present the contents of the .php files, # if there is no file extension in the URL. # For example: /foo shows /foo.php RewriteRule ^[[^/]+][?:/[.+]]?$ $1.php?[?2p=$2] [L]

    Code language: Apache [apache]
    3

Việc thay thế

# Enable the Rewrite Engine RewriteEngine On # Match a folder name, www.example.com/dev/ in this case RewriteBase /dev/ # SEO URL's for PHP files RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d # Hide the .php extension to prevent double content RewriteRule ^[.+].php$ $1 [NC,L,R=301] # Rewrite to, and present the contents of the .php files, # if there is no file extension in the URL. # For example: /foo shows /foo.php RewriteRule ^[[^/]+][?:/[.+]]?$ $1.php?[?2p=$2] [L]

Code language: Apache [apache]
4 sử dụng tham chiếu có điều kiện

  • Chuỗi truy vấn được điền bằng

    # Enable the Rewrite Engine RewriteEngine On # Match a folder name, www.example.com/dev/ in this case RewriteBase /dev/ # SEO URL's for PHP files RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d # Hide the .php extension to prevent double content RewriteRule ^[.+].php$ $1 [NC,L,R=301] # Rewrite to, and present the contents of the .php files, # if there is no file extension in the URL. # For example: /foo shows /foo.php RewriteRule ^[[^/]+][?:/[.+]]?$ $1.php?[?2p=$2] [L]

    Code language: Apache [apache]
    5 nếu tồn tại

    # Enable the Rewrite Engine RewriteEngine On # Match a folder name, www.example.com/dev/ in this case RewriteBase /dev/ # SEO URL's for PHP files RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d # Hide the .php extension to prevent double content RewriteRule ^[.+].php$ $1 [NC,L,R=301] # Rewrite to, and present the contents of the .php files, # if there is no file extension in the URL. # For example: /foo shows /foo.php RewriteRule ^[[^/]+][?:/[.+]]?$ $1.php?[?2p=$2] [L]

    Code language: Apache [apache]
    3

Cuối cùng, một quy tắc được thêm vào để ẩn. phần mở rộng php

Điều này ngăn công cụ tìm kiếm tìm nội dung trùng lặp và do đó ngăn hình phạt cho vị trí trang web của bạn trong kết quả tìm kiếm. Có nhiều cách khác nữa

Viết lạiProxy với. htaccess trong IIS

Loại bỏ. phần mở rộng php với. htaccess từ URL

Để loại bỏ. php tiện ích mở rộng từ một URL có. htaccess, bạn có thể lưu các mục sau trong một tệp mới. tập tin htaccess

Code language: HTML, XML [xml]
0

Code language: HTML, XML [xml]
1

Hoặc sử dụng MultiViews

Code language: HTML, XML [xml]
2

Điều này loại bỏ tiện ích mở rộng làm cho URL có nhiều người dùng hơn và -một số người nói- Công cụ tìm kiếm SEO thân thiện. Sử dụng những gì phù hợp nhất với bạn và thêm thẻ meta chuẩn vào phần đầu HTML của bạn để tránh nội dung trùng lặp [nếu thích hợp]

Làm cách nào để ẩn tiện ích mở rộng URL trong PHP?

Cách xóa. .
Loại bỏ. tiện ích mở rộng php từ URL. .
Mở tệp htaccess. Mở terminal và chạy lệnh sau để mở. .
Loại bỏ. tiện ích mở rộng php từ URL. .
Khởi động lại máy chủ web Apache. Khởi động lại máy chủ Apache bằng lệnh sau $ sudo systemctl restart httpd

Mã PHP có bị ẩn không?

Các nhà phát triển web và những người khác am hiểu về trang web biết rằng bạn có thể sử dụng trình duyệt để xem mã nguồn HTML của trang web. Tuy nhiên, nếu trang web chứa mã PHP thì mã đó sẽ không hiển thị vì tất cả mã PHP được thực thi trên máy chủ trước khi trang web được gửi đến trình duyệt.

Là gì. htaccess trong PHP?

Các. htaccess [Truy cập siêu văn bản] là tệp cấu hình máy chủ phân tán Apache . Bạn có thể dùng. htaccess để đặt cấu hình máy chủ cho một thư mục cụ thể. Thư mục này có thể là thư mục gốc của trang web của bạn hoặc thư mục con khác nơi chứa.

Chủ Đề