phpinfo () - có cách nào dễ dàng để xem nó không?


123

Mỗi lần tôi muốn xem, phpinfo();tôi phải:

  • Tạo tệp info.php;
  • Viết phpinfo();vào đó.
  • Truy cập trình duyệt và nhập "thisproject.dev/info.php" của tôi

Tôi đang sử dụng Ubuntu.

Không có cách nào thực tế hơn để xem phpinfo trong trình duyệt?


2
Như @Jaitsu và Brian Gordon đã viết, bạn có thể truy cập PHP thông qua dòng lệnh, nhưng những gì họ không đề cập đến là đôi khi PHP trong dòng lệnh khác với PHP trong Apache, tức là chúng hoạt động ở các chế độ khác nhau và thậm chí có thể có cấu hình khác nhau. các tập tin.
binaryLV

@binaryLV điểm tốt, một tôi bỏ qua khi tôi trả lời
JamesHalsall

Câu trả lời:


221

Từ dòng lệnh của bạn, bạn có thể chạy ..

php -i

Tôi biết đó không phải là cửa sổ trình duyệt, nhưng bạn không thể xem phpinfo();nội dung nếu không thực hiện lệnh gọi hàm. Rõ ràng, cách tiếp cận tốt nhất là có một tập lệnh phpinfo trong thư mục gốc của thư mục máy chủ web của bạn, theo cách đó bạn có thể truy cập vào nó mọi lúc thông qua http://localhost/info.phphoặc thứ gì đó tương tự (LƯU Ý: không làm điều này trong môi trường sản xuất hoặc nơi nào đó có thể truy cập công khai)

CHỈNH SỬA: Như đã đề cập bởi binaryLV, việc có hai phiên bản php.ini cho mỗi lần cài đặt khá phổ biến. Một cho giao diện dòng lệnh (CLI) và một cho giao diện máy chủ web. Nếu bạn muốn xem đầu ra phpinfo cho máy chủ web của mình, hãy đảm bảo bạn chỉ định đường dẫn tệp ini, ví dụ: ...

php -c /etc/php/apache2/php.ini -i 

10
Đừng quên bảo mật nó, vì đầu ra của phpinfo()không được truy cập công khai.
binaryLV

Cũng có một lý do chính đáng để KHÔNG LIÊN KẾT cả hai, php.iniđặc biệt nếu bạn đang làm việc trên một máy chủ công cộng.
JohnnyQ

Bạn thực sự chỉ nên sử dụng cờ -c và chuyển vào đường dẫn cho tệp .ini thích hợp thay vì làm điều gì đó như liên kết biểu tượng hoặc gì không.
Chris Rasys

@ChrisRasys tại sao bạn muốn phải chỉ định nó mỗi khi bạn chạy các tập lệnh CLI?
JamesHalsall

@JamesHalsall Nếu bạn cần mô phỏng cài đặt PHP mà máy chủ web của bạn đang sử dụng, thì đó là cách thích hợp để thực hiện. Nếu không, bạn có thể sử dụng sai cài đặt CLI hoặc bạn đang xóa sự phân cách giữa cài đặt CLI và cài đặt máy chủ web. Sự tách biệt đó tồn tại là có lý do.
Chris Rasys

18

Nếu bạn đã cài đặt php trên máy cục bộ của mình, hãy thử:

$ php -a
Interactive shell

php > phpinfo();

2
Điều này có nhận được php.iniphiên bản cli hoặc phiên bản trong apache không? Trong trường hợp của tôi, tôi sử dụng 2 php.inicho cli và apache.
JohnnyQ

2
Tôi đã thử điều này và nó nhận được php.initừ phiên bản CLI. Nếu bạn giữ 2 phiên bản php.ininày có thể không áp dụng được.
JohnnyQ

15

Từ CLI, cách tốt nhất là sử dụng grepnhư:

php -i | grep libxml

3
Đây là một cách hay để tìm kiếm trong ini php.
claudiu.f.marginean

10

Từ CLI:

php -r 'phpinfo();'

Máy chủ web của tôi (debian 7): php -r 'phpinfo ();' Lỗi trong đối số 1, ký tự 2: không tìm thấy tùy chọn r php -v PHP 4.4.9 (cgi-fcgi) (xây dựng: 28/02/2017 11:31:58)
Prisoner 13

2

Sử dụng dòng lệnh.

touch /var/www/project1/html/phpinfo.php && echo '<?php phpinfo(); ?>' >> /var/www/project1/html/phpinfo.php && firefox --url localhost/project1/phpinfo.php

Một cái gì đó như vậy? Không!

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.