[PHP cơ bản] Tìm hiểu php.ini và thiết lập cơ bản




data vpn
Bài này thuộc phần 3 của 15 phần trong serie PHP cho WordPress Developer

Khi các bạn muốn thay đổi bất kỳ một cấu hình nào đó trong PHP như tăng bộ nhớ sử dụng, thay đổi đường dẫn lưu tạm thời, bật chức năng hiển thị lỗi,…thì các bạn sẽ can thiệp vào tập tin php.ini. Lưu ý rằng nếu bạn sử dụng các dịch vụ Shared Host thì có thể nhiều nhà cung cấp không cho bạn tự thiết lập php.ini mà sẽ có một tập tin khác tương tự tên là user.ini, hoặc là không có gì cả.

Còn nếu bạn dùng localhost, Cloud9 hay máy chủ riêng thì bạn sẽ có quyền sửa nội dung php.ini.

Ở Cloud9, bạn có thể dễ dàng thấy php.ini ngay tại thư mục của project.

cloud9-php.ini

Cấu trúc tập tin php.ini

Trong tập tin này, nó sẽ chia ra làm hai phần chính gồm:

  • Phần ghi chú: Từ dòng 1 đến 195. Nội dung trong đây là để chúng ta đọc sơ bộ xem trong file này có các thiết lập gì và ý nghĩa, giá trị của nó.
  • Phần thiết lập: Từ dòng 196 trở xuống sẽ là các thiết lập. Các thiết lập có ký tự ; (còn gọi là ký tự comment) nghĩa là thiết lập đó đang sử dụng giá trị mặc định. Nếu bạn muốn đổi thiết lập thì hãy xoá dấu ; trước nó và sửa giá trị theo ý muốn.

Cũng nên lưu ý rằng, các thiết lập trong php.ini sẽ có dạng:

tên_thiết_lập = giá trị

Giá trị có 3 kiểu:

  • Kiểu số kèm đơn vị: 500M, 100K, 1G (500MB, 100KB, 1GB). Hoặc cũng có vài thiết lập chỉ sử dụng số.
  • Kiểu boolean: On hoặc Off, hoặc có thể là 0 và 1.
  • Kiểu tên giá trị: Một vài thiết lập có hỗ trợ giá trị là các tên thiết lập.

Các thiết lập thông dụng

Tất cả các thiết lập trong php.ini có thể chúng ta không cần thuộc nó mà chỉ đụng vào khi cần thôi, nên ở đây chúng ta chỉ tìm hiểu qua các thiết lập mà các bạn sẽ thường xuyên đụng vào nhất.

disable_functions

Thiết lập này sẽ có chức năng vô hiệu hoá một số hàm có sẵn trong PHP vì lý do bảo mật. Tạm thời ở đây chúng ta sẽ thử vô hiệu hoá các hàm nguy hiểm như exec(), system(), passthru(), symlink() bằng cách khai báo giá trị chodisable_functions như sau.

php.ini-disable_function

expose_php

Tuỳ chọn này sẽ giúp bạn ẩn thông tin về PHP trên HTTP Header của website nếu bạn không muốn cho ai đó biết rằng bạn đang sử dụng PHP. Nếu muốn ẩn đi, chỉ cần sửa giá trị thành Off.

max_execution_time

Đây là tuỳ chọn rất phổ biến, nó sẽ giúp bạn gia hạn thời gian thực thi một kịch bản PHP nào đó nếu nó cần nhiều thời gian hơn 30 giây. Nếu thời gian thực hiện script quá giá trị trong này nó sẽ báo lỗi “Fatal error: Maximum execution time of {
giây}
seconds”. Hiện tại bạn có thể nâng lên thành 600, tức 600 giây.

memory_limit

Mặc định PHP sẽ được chỉ định sử dụng 128MB bộ nhớ của hệ thống cho việc xử lý kịch bản trong PHP. Tuy nhiên với các mã nguồn lớn, có thể nó sẽ cần thêm bộ nhớ nên bạn sẽ chỉnh ở đây.

error_reporting

Mặc định PHP sẽ hiển thị tất cả các lỗi bao gồm lỗi nghiêm trọng (Fatal Error), cảnh báo (Warning), ghi chú (Notice),…nhưng nếu bạn muốn tuỳ chọn hiển thị các lỗi nhất định thì sẽ điều chỉnh giá trị ở đây. Ý nghĩa các giá trị lỗi bạn có thể xem tại đây.

display_errors

Tuỳ chọn hiển thị lỗi ra ngoài website. Khi học lập trình hoặc khi đang viết code cho dự án, bạn nên bật bằng cách sửa giá trị thành On để thấy ngay lỗi thay vì trang trắng.

log_errors

Tuỳ chọn này sẽ lưu lỗi vào các tập tin log, hay còn gọi là error_log đó.

file_uploads

Tuỳ chỉnh cho phép upload tập tin thông qua PHP.

upload_max_filesize

Dung lượng tối đa mỗi tập tin khi upload. Ngoài ra, bạn cũng phải nâng dung lượng của tuỳ chọnpost_max_size lên nhé.

Ok, bây giờ bạn có thể ấn File >> Save để lưu lại hoặc Ctrl + S.

Để kiểm tra lại giá trị thiết lập, bạn có thể tạo ra một tập tin mới ở thư mục project tên là info.php, sau đó copy đoạn này vào.

<?php phpinfo(); ?>

Sau đó bạn truy cập vào đường dẫn http://domain.c9.io/info.php để xem thông tin thiết lập PHP.

phpinfo

Các thiết lập còn lại bạn có thể tự đọc qua nếu muốn tìm hiểu sâu hơn nhé, nhưng tạm thời chỉ cần lưu ý các thiết lập sâu hơn thôi.

Tìm hiểu PHP sơ bộ vậy là đủ rồi, ở bài sau chúng ta sẽ đi vào việc tìm hiểu về ngôn ngữ PHP rồi bắt tay vào làm việc với nó nhé.




data vpn

Leave your comment