Vấn đề đọc file trên PHP???

likehack

Active Member
08/01/2017
3
32 bài viết
Vấn đề đọc file trên PHP???
Xin chào tất cả các bạn, mình có một rắc rối trong việc đọc file trên PHP. Mình có cài đặt dịch vụ Squid proxy server Centos 6.x cho phép các client truy cập tinernet. Squid sẽ ghi vào file /var/log/squid/access.log mỗi khi có client nào đó sử dụng server này.

Đoạn code php dưới đây là phương thức đọc file
upload_2017-7-19_19-21-12.png


kết quả:

upload_2017-7-19_19-27-0.png


- file /var/log/squid/access.log là file log của hệ thống, dump có kết quả bool(false) nghĩa là file không đọc được

- file /var/www/html/access.log là file log mình tạo ra, dump có kết quả resource(3) of type (stream) nghĩa là file đọc được, có thể xữ lý tiếp.

Mặc dù mình đã cấp quyền cho file log với câu lệnh chmod 777 /var/log/squid/access.log rồi mà cũng không thể đọc được file log.

Bạn nào biết có thể giúp mình với nhé!!!
 
Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
bạn thử chạy file test.php quyền root xem :D
 
Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
Comment
file /var/log/squid/access.log là file hệ thống nên các app thư mục web ( www/html/) sẽ không có quyền đọc bạn nhé. Muốn đọc được bạn phải chạy httpd dưới quyền root hoặc viết script tạo 1 file copy của file /var/log/squid/access.log vào trong thư mục web (www/html/)
 
Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
  • Thích
Reactions: likehack
Comment
file /var/log/squid/access.log là file hệ thống nên các app thư mục web ( www/html/) sẽ không có quyền đọc bạn nhé. Muốn đọc được bạn phải chạy httpd dưới quyền root hoặc viết script tạo 1 file copy của file /var/log/squid/access.log vào trong thư mục web (www/html/)

chạy httpd dưới quyền root như thế nào vậy bạn?? chứ mình đạng chạy với user là root rồi mà cũng không được
 
Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
Comment
Có thể do Umask?
 
Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
Comment
chạy httpd dưới quyền root như thế nào vậy bạn?? chứ mình đạng chạy với user là root rồi mà cũng không được
Bạn phải cấu hình lại file httpd.conf theo tham khảo link sau:
https://askubuntu.com/questions/116144/how-do-i-run-apache-as-root
Nhưng chạy dưới quyền root khả năng hệ thống bị hack rất cao nên bạn chọn các tự động tạo 1 file copy vào thư mục web để đọc cho an toàn.
 
Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
Comment
chạy httpd dưới quyền root như thế nào vậy bạn?? chứ mình đạng chạy với user là root rồi mà cũng không được
;-
Bình thường nếu như bạn chạy apache hoặc gọi thư mục cho virtual site, mặc định sẽ là "www-data" user nhé bạn :). Và cũng không ai gọi ngược file của system từ service cả.
 
Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
Comment
Bên trên