Cấu hình PHP.INI file



File cấu hình PHP, php.ini, là bước cuối cùng và trực tiếp nhất ảnh hưởng tới tính năng của PHP. Tệp php.ini này được đọc mỗi khi PHP được khởi tạo, nói cách khác, bất cứ khi nào httpd được khởi động lại cho Module Version hoặc với mỗi sự thực thi Script cho CGI version. Nếu thay đổi của bạn không hiển thị, bạn nhớ dừng lại và khởi động lại httpd. Nếu vẫn không hiển thị, sử dụng phpinfo() để kiểm tra path tới php.ini.

File cấu hình nên được ghi chú rõ ràng và cẩn thận. Các key là phân biệt kiểu chữ, các giá trị keyword thì không; các khoảng trắng, các dòng bắt đầu với dấu chấm phảy bị bỏ qua. Giá trị Boolean có thể được biểu diễn bởi 1/0, Yes/No, On/Off hoặc True/False.

Phần dưới giải thích các cài đặt quan trọng trong php.ini cần thiết cho PHP Parser.

short_open_tag = Off

Short open tags giống như: . Tùy chọn này phải được thiết lập là Off nếu bạn muốn sử dụng các hàm XML.

safe_mode = Off

Nếu được thiết lập là On, bạn có thể biên dịch PHP với --enable-safe-mode flag. Safe mode là thích hợp nhất để sử dụng CGI. Bạn nên theo dõi phần giải thích tùy chọn CGI compile-time.

safe_mode_exec_dir = [DIR]

Tùy chọn này chỉ thích hợp nếu safe mode là On; nó cũng có thể được thiết lập với --with-exec-dir flag trong tiến trình xây dựng Unix. PHP trong safe mode chỉ thực thi các Binary bên ngoài thư mục này. Giá trị mặc định là /usr/local/bin.

safe_mode_allowed_env_vars = [PHP_]

Tùy chọn này thiết lập biến môi trường nào mà người sử dụng có thể thay đổi trong Safe mode. Giá trị mặc định là các biến này được phụ thêm với "PHP_". Nếu chỉ thị này là trống, hầu hết các biến là có thể thay đổi được.

safe_mode_protected_env_vars = [LD_LIBRARY_PATH]

Tùy chọn này thiết lập biến môi trường nào mà người dùng không thể thay đổi trong Safe mode, ngay cả khi safe_mode_allowed_env_vars được thiết lập tùy ý.

disable_functions = [function1, function2...]

Một sự bổ sung thú vị tới cấu hình PHP4 và tồn tại vĩnh viễn trong PHP là khả năng để vô hiệu hóa các hàm đã chọn vì các lý do an toàn. Trước đây, điều này cần chỉnh sửa bằng tay bởi C code mà từ đó PHP được tạo. Các hàm về Filesystem, system và Network nên có thể vận hành đầu tiên, bởi vì nó cho phép khả năng để ghi file và hiệu chỉnh System thông qua HTTP không bao giờ là một sáng kiến an toàn.

max_execution_time = 30

Hàm set_time_limit() không làm việc trong Safe mode, vì thế, đây là cách chính để để tạo một timeout trong safe mode.

error_reporting = E_ALL & ~E_NOTICE

Giá trị mặc định là E_ALL & ~E_NOTICE, tất cả lỗi ngoại trừ Notice. Server nên được thiết lập ít nhất một giá trị mặc định.

error_prepend_string = [""]

Với backend của nó, error_append_string, cài đặt này cho phép bạn tạo các Error Message với màu khác nhau.

warn_plus_overloading = Off

Cài đặt này thông báo một Warning nếu toán tử + được sử dụng với các string, khi trong một giá trị form.

variables_order = EGPCS

Cài đặt cấu hình này thay thế gpc_order. Bây giờ, cả hai là cũ với register_globals. Nó thiết lập thứ tự của các biến khác nhau: Environment, GET, POST, COOKIE, và SERVER. Bạn có thể thay đổi thứ tự này. Các biến sẽ được ghi đè thành công từ trái qua phải. Thực sự nó chưa được sử dụng nhiều.

register_globals = Off

Cài đặt này cho phép bạn quyết định có hay không bạn muốn đăng ký các biến EGPCS là global. Nó bây giờ là cũ, và như trong PHP4.2, nó được thiết lập là Off theo mặc định. Sử dụng các superglobal array để thay thế. Tất cả danh sách code chủ yếu trong loạt bài này sử dụng superglobal array.

gpc_order = GPC

Cài đặt này đã là cũ.

magic_quotes_gpc = On

Cài đặt này thoát các trích dẫn trong dữ liệu GET/POST/COOKIE đang đến. Nếu bạn sử dụng nhiều form mà có thể đệ trình tới chính chúng hoặc form khác và hiển thị các giá trị form, bạn có thể cần thiết lập chỉ thị này là On hoặc chuẩn bị sử dụng addslashes() trên dữ liệu kiểu string.

magic_quotes_runtime = Off

Cài đặt này thoát các trích dẫn trong Database và Text string đang đến. Nhớ rằng, SQL thêm các dấu gạch chéo trong các trích dẫn đơn và các dấu nháy đơn khi lưu giữ các string và không bỏ qua chúng khi trả về. Nếu cài đặt này là Off, bạn sẽ cần sử dụng stripslashes() khi cho kết quả là bất kỳ kiểu dữ liệu string nào từ một SQL Database. Nếu magic_quotes_sybase được thiết lập là On, thì cài đặt này phải là Off.

magic_quotes_sybase = Off

Cài đặt này thoát các trích dẫn trong Database và Text string đang đến với các trích dẫn đơn Sybase-style thay vì các dấu chéo ngược. Nếu magic_quotes_runtime được thiết lập là On, cài đặt này phải là Off.

auto-prepend-file = [path/to/file]

Nếu một path được xác định ở đây, PHP phải tự động bao nó tại phần đầu mỗi PHP file. Các giới hạn về file được bao được áp dụng.

auto-append-file = [path/to/file]

Nếu một path được xác định ở đây, PHP phải tự động bao nó tại cuối mỗi PHP file, trừ khi bạn thoát ra bởi hàm exit(). Các giới hạn về file được bao được áp dụng.

include_path = [DIR]

Nếu bạn thiết lập giá trị này, bạn sẽ chỉ được cho phép bao hoặc yêu cầu các file từ các thư mục này. Nói chung, thư mục include này ở dưới Document Root; đây là bắt buộc. Nếu bạn đang chạy trong Safe Mode, thiết lập nó là . để bao các file từ cùng thư mục mà script của bạn ở trong đó. Nhiều thư mục được phân biệt bởi dấu hai chấm: .:/usr/local/apache/htdocs:/usr/local/lib.

doc_root = [DIR]

Nếu bạn đang sử dụng Apache, bạn đã thiết lập một Document Root cho Server này hoặc Virtual Host trong httpd.conf. Thiết lập giá trị này tại đây nếu bạn đang sử dụng Safe Mode hoặc nếu bạn muốn kích hoạt PHP chỉ trên một phần site của bạn (ví dụ: chỉ trong thư mục phụ của Web Root).

file_uploads = [on/off]

Là on nếu bạn sẽ upload các file bởi sử dụng PHP script.

upload_tmp_dir = [DIR]

Đừng uncomment dòng này trừ khi bạn hiểu ý nghĩa của HTTP upload.

session.save-handler = files

Hiếm khi bạn muốn thay đổi cài đặt này, nên đừng động đến nó.

ignore_user_abort = [On/Off]

Cài đặt này điều khiển những gì xảy ra nếu một khách truy cập site nhấn vào nút Stop của trình duyệt. Mặc định là On, nghĩa là script tiếp tục chạy để hoàn thành hoặc timeout. Nếu cài đặt được thay đổi về Off, script sẽ ngừng giữa chừng. Cài đặt này chỉ làm việc trong Module Mode, không CGI.

mysql.default_host = hostname

Server Host mặc định để sử dụng khi kết nối tới Database Server nếu không có host nào khác được xác định.

mysql.default_user = username

Username mặc định để sử dụng khi kết nối tới Database Server nếu không có name nào khác được xác định.

mysql.default_password = password

Password mặc định để sử dụng khi kết nối tới Database Server nếu không có password nào khác được xác định.

Các bài học PHP phổ biến khác tại VietJack:


cai_dat_php_tren_windows_linux_va_mac_osx.jsp