Các tệp PHP có thể được tải xuống không?

Xin chào mọi người,
Tôi đã chạy nhiều trang PHP trên máy chủ Plesk của mình, tuy nhiên, một trang duy nhất vẫn tiếp tục cung cấp các tệp PHP để tải xuống thay vì thực thi chúng. Trang đích Tên miền mẫu tải hoàn hảo và in một cái gì đó như "Chuyển tiếp đến trang đăng nhập". Sau vài giây, chỉ số. tải xuống tệp php. Tôi đã tạo một phpinfo đơn giản. trang php ? . //www. ví dụ. com/phpinfo. php cũng được cung cấp để tải xuống (chứa mã php gốc) thay vì được thực thi.
Trong Plesk, tôi có thể chọn từ nhiều PHP 7 khác nhau. 2 phiên bản, nó hoạt động với FPM thông qua nginx. Tuy nhiên, FPM qua Apache hoặc FCGI qua Apache chỉ cho phép tôi tải xuống các tệp. Hỗ trợ PHP được kích hoạt tất nhiên. Các miền khác, ngay cả đối với cùng một khách hàng, sử dụng cùng một cài đặt hoạt động hoàn toàn tốt.

Tôi đã cài đặt lại các gói fcgi, khởi động lại Apache nhiều lần, cập nhật các gói Plesk như được đề xuất trong nhiều chủ đề khác nhưng Apache và PHP7 vẫn không hoạt động cùng nhau trên một miền duy nhất.

Tôi cũng đã thử những cách này mà không thành công.
Tệp PHP được tải xuống thay vì thực thi
Đã giải quyết - Một miền tải xuống tệp php thay vì thực thi chúng

Tôi đánh giá cao bất kỳ .

 

Nếu bạn muốn tạo các loại tệp hoặc hình ảnh khác nhau, tải tệp trực tiếp vào ổ đĩa của người dùng bằng PHP, bạn có thể chạy hàm readfile()

Hãy xem cách thực hiện trong ví dụ tạo thư viện hình ảnh, điều này sẽ giúp người dùng tải xuống các tệp hình ảnh chỉ bằng một cú nhấp chuột

Trong ví dụ dưới đây, một bộ sưu tập hình ảnh. php được tạo và một mã được đặt bên trong nó

Vì vậy, trong ví dụ trên, liên kết tải xuống trỏ đến tệp tải xuống. tập tin php. Đến lượt nó, URL bao gồm tên tệp hình ảnh, giống như một chuỗi truy vấn. Ngoài ra, bạn có thể nhận thấy rằng hàm urlencode() được áp dụng để mã hóa tên tệp hình ảnh theo cách mà chúng có thể được chuyển một cách an toàn giống như tham số URL. Lý do là tên tệp có thể bao gồm các ký tự URL không an toàn. Toàn bộ mã tải xuống. php, buộc tải xuống hình ảnh trông như sau

Các định dạng tệp khác như pdf, doc, v.v. cũng có thể được tải xuống theo cách đã trình bày ở trên

Điều quan trọng cần lưu ý là trong ví dụ trên, biểu thức chính quy (dòng 8) không cho phép các tệp có tên bắt đầu hoặc kết thúc bằng dấu chấm (. ). Ví dụ: bạn có thể sử dụng tên tệp như sách. jpg hoặc Sách. jpg nhưng không thể sử dụng sách. jpg. ,. diều. jpg, v.v.

Trong bài viết này, chúng ta sẽ xem cách tải xuống và lưu tệp từ URL trong PHP, đồng thời cũng sẽ hiểu các cách khác nhau để thực hiện nó thông qua các ví dụ. Có nhiều cách tiếp cận để tải xuống một tệp từ một URL, một số trong số chúng sẽ được thảo luận bên dưới

Sử dụng hàm file_get_contents(). Hàm file_get_contents() được sử dụng để đọc một tệp thành một chuỗi. Chức năng này sử dụng các kỹ thuật ánh xạ bộ nhớ được máy chủ hỗ trợ và do đó nâng cao hiệu suất, khiến nó trở thành một cách ưa thích để đọc nội dung của tệp

cú pháp

file_get_contents($path, $include_path, $context, 
                  $start, $max_length)

ví dụ 1. Ví dụ này minh họa việc sử dụng hàm file_get_contents() để đọc tệp thành một chuỗi

PHP




 

    // Initialize a file URL to the variable

    $url

    'https://media.geeksforgeeks.org/wp-content/uploads/gfg-40.png'0

1

    3

    5 678$url 0

1

     3

     5

     7

     9 8    185    4    58$url    8

    // Initialize a file URL to the variable0

// Initialize a file URL to the variable1// Initialize a file URL to the variable2 // Initialize a file URL to the variable30

    // Initialize a file URL to the variable6

    // Initialize a file URL to the variable8

    // Initialize a file URL to the variable0

// Initialize a file URL to the variable1// Initialize a file URL to the variable2     3____10

    // Initialize a file URL to the variable6

    7

đầu ra

Trước khi chạy chương trình.  

Các tệp PHP có thể được tải xuống không?

thư mục nguồn php

Sau khi chạy chương trình

Các tệp PHP có thể được tải xuống không?

Tệp đã tải xuống sau khi thực hiện thành công

Các tệp PHP có thể được tải xuống không?

Tệp hình ảnh đã tải xuống

Sử dụng PHP Curl. cURL là viết tắt của 'Ứng dụng khách cho URL', ban đầu với URL được đánh vần bằng chữ hoa để làm rõ rằng nó xử lý các URL. Nó được phát âm là 'xem URL'. Dự án cURL có hai sản phẩm libcurl và curl

Các bước tải file.   

  • Khởi tạo URL tệp cho biến
  • Tạo phiên cURL
  • Khai báo một biến và lưu tên thư mục lưu file tải về
  • Sử dụng hàm basename() để trả về tên cơ sở tệp nếu đường dẫn tệp được cung cấp dưới dạng tham số
  • Lưu tệp vào vị trí đã cho
  • Mở vị trí tệp đã lưu ở chế độ ghi chuỗi
  • Đặt tùy chọn chuyển cURL
  • Thực hiện phiên cURL và đóng phiên cURL và giải phóng tất cả tài nguyên
  • Đóng tệp

Ví dụ. Ví dụ này minh họa việc sử dụng PHP Curl để thực hiện các yêu cầu HTTP trong PHP, để tải xuống tệp

PHP




    9// Initialize a file URL to the variable

    9$url

    9'https://media.geeksforgeeks.org/wp-content/uploads/gfg-40.png'0

 

    9$url9

    91 2$url 0

 

    97

    99

    9    1 6______330

 

    9    7

    9    9

    95 678$url 0

 

    9'https://media.geeksforgeeks.org/wp-content/uploads/gfg-40.png'9

    901 6    1 0450

 

    909

    911 6_______113801    417 0

 

    921

    923______712511 0

    923____7131

 

    934

    936____71 0

 

    941

    9431 0

 

    948

    950____111 0

    7

đầu ra

Trước khi chạy chương trình

Các tệp PHP có thể được tải xuống không?

thư mục nguồn php

Sau khi chạy chương trình

Các tệp PHP có thể được tải xuống không?

Tệp hình ảnh đã tải xuống

PHP là ngôn ngữ kịch bản phía máy chủ được thiết kế dành riêng cho phát triển web. Bạn có thể học PHP từ đầu bằng cách làm theo Hướng dẫn PHP và Ví dụ về PHP này

Bạn có thể tải xuống các tệp PHP từ một trang web không?

Vì PHP là ngôn ngữ phía máy chủ nên bạn không thể tải xuống bất kỳ. tệp php từ bất kỳ trang web nào như tệp Javascript. Tôi nên tải xuống cái gì để thực hành PHP cho người mới bắt đầu?

Tại sao tệp PHP được tải xuống?

Nguyên nhân phổ biến nhất khiến các trang PHP tải xuống thay vì hiển thị trong trình duyệt là giá trị AddHandler hoặc SetHandler không chính xác trong trang web. tệp htaccess .

Làm cách nào để tải xuống tệp PHP từ thư mục web?

Các bước để tải tệp xuống. .
Khởi tạo URL tệp cho biến
Tạo phiên cURL
Khai báo một biến và lưu tên thư mục lưu file tải về
Sử dụng hàm basename() để trả về tên cơ sở tệp nếu đường dẫn tệp được cung cấp dưới dạng tham số
Lưu tệp vào vị trí đã cho

Làm cách nào để tải xuống tệp đã tải lên trong PHP?

$ target_path = "e. /";
$ target_path = $ target_path. tên cơ sở( $_FILES['fileToUpload']['name']);
if(move_uploaded_file($_FILES['fileToUpload']['tmp_name'], $target_path)) {
echo "Tệp đã tải lên thành công. “;
} khác{
echo "Xin lỗi, tệp không được tải lên, vui lòng thử lại. “;