Jump to content

  • Log in with Facebook Log in with Twitter Log in with Windows Live Log In with Google      Sign In   
  • Create Account
  • facebook
  • googleplus
  • twitter

Photo
- - - - -

Nên chọn suPHP hay DSO


  • Please log in to reply
No replies to this topic

#1 PETER

PETER

    Super Administrator

  • Admin
  • 3,058 posts

Posted 23 February 2013 - 05:00 AM

Hiện nay các web server Linux thường sử dụng 4 PHP handlers phổ biến là: CGI, FastCGI, suPHP và DSO. Ở bài viết này PETER chỉ đề cập đến suPHP và DSO, hiện nay đây là 2 PHP handlers được sử dụng rộng rãi nhất.

 

Trước tiên cần phải tìm hiểu PHP handler là gì?

 

Với một trang web chạy PHP, mỗi yêu cầu từ client gửi lên server, server sẽ phải xử lý các mã PHP sau đó trả kết quả về client, quá trình xử lý đó thông qua một đơn vị phụ trách việc biên dịch PHP dựa trên thư viện PHP có sẵn trên server, và đơn vị phụ trách việc xử lý này gọi là PHP handler. Như PETER đã nói ở trên, có 4 PHP handlers phổ biến là: CGI, FastCGI, suPHP và DSO.

 

suPHP là gì?

 

Có thể hiểu ngắn gọn suPHP là một công cụ cho phép user (và chỉ user đó) có toàn quyền thực thi (bao gồm cả read và write) kịch bản PHP của họ mà không cần quan tâm đến những thiết lập quyền thực thi khác, như CHMOD. Khi sử dụng suPHP, người dùng có thể rút ngắn những khoảng thời gian đáng kể thay vì phải đi change mode (CHMOD) từng file / folder, hay nói cách khác, khi sử dụng suPHP bạn cứ để CHMOD mặc định của file là 644 (0644) và folder là 755 (0755). Hạn chế của suPHP là phải verify owner của file trước khi thực thi, với một webiste chạy PHP với lượng truy cập quá lớn thì việc verify đó sẽ ảnh hưởng đến tốc độ cũng như tài nguyên CPU trên server. Do đó nhiều người đã chọn giải pháp sử dụng DSO hoặc FastCGI thay vì suPHP.

 

DSO là gì?

 

DSO là PHP handler nhưng lại chạy như một module của Apache nên nó chuyển user thực thi PHP sang thành user của Apache trên server và user đó thường là "nobody". Sử dụng DSO là một thế mạnh về hiệu năng xử lý và tốc độ nhưng hãy cẩn thận với vấn đề bảo mật, sử dụng DSO sẽ khiến bạn tốn nhiều thời gian để giới hạn lại quyền thực thư các file PHP thông qua CHMOD vì khi sử DSO, ví dụ với 1 file có CHMOD là 666 thì mọi user trên server đều có quyền đọc và ghi đối với file đó, hoặc một file PHP có owner là user khác cũng có thể chạy trên web của bạn, điều này ngược lại hoàn toàn với suPHP.

 

Chọn suPHP hay DSO?

 

Sau khi nắm được tác dụng cũng như "tác hại" của suPHP và DSO thì dựa vào nhu cầu hoàn cảnh sử dụng mà bạn tự chọn cho mình một PHP handler phù hợp. Theo kinh nghiệm của PETER thì nếu server chạy shared hosting có nhiều user trên server thì nên chọn suPHP vừa tăng cường bảo mật vừa đỡ support mấy vấn đề liên quan đến CHMOD. Còn nếu web của bạn chạy server riêng thì nên chọn DSO để tăng cường hiệu xuất và không ngại việc "va chạm" quyền thực thi PHP giữa các user trên server do các user đó là của bạn.

 

Lưu ý: Dù chọn PHP handler nào thì cũng nên bật Apache suEXEC, ở bài viết khác PETER sẽ nói về Apache suEXEC, và các PHP handlers còn lại.



Xem thêm một số dịch vụ bạn có thể quan tâm





Similar Topics Collapse

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users