Php ob_flush nginx
Tôi đang cố gắng chứng minh một trang kiểu sao chổi và để khởi động nó, tôi nghĩ rằng tôi sẽ đặt một bộ đếm đơn giản trong PHP để xuất 0->3 với độ trễ một giây giữa mỗi đầu ra và xóa nó để sàng lọc mỗi giây. Vấn đề là không có gì tôi đã thử thực sự quản lý để xóa bộ đệm. Nó chỉ nằm đó với công cụ quay vòng tải và sau 4 giây sẽ đổ rất nhiều thứ lên màn hình cùng một lúc. Tôi đã tìm hiểu và đã đặt cấu hình nginx như sau Show user www-data; worker_processes 1; error_log /var/log/nginx/error.log; pid /var/run/nginx.pid; events { worker_connections 1024; multi_accept on; } http { include /etc/nginx/mime.types; access_log /var/log/nginx/access.log; sendfile on; tcp_nopush on; #keepalive_timeout 0; keepalive_timeout 65; tcp_nodelay on; #---------------------------------------------- # fastcgi_keep_conn on; proxy_buffering off; gzip off; #---------------------------------------------- gzip_disable "MSIE [1-6]\.(?!.*SV1)"; include /etc/nginx/conf.d/*.conf; include /etc/nginx/sites-enabled/*; } Tôi đã phải nhận xét fastcgi_keep_con trên;
Sau đây là trang PHP "; ob_flush(); flush(); sleep(1); } ob_end_clean(); ?> Bất cứ ý tưởng những gì tôi đang mất tích ở đây? Liên kết để bình luậnChia sẻ trên các trang web khácNhiều tùy chọn chia sẻ hơn trqĐăng ngày 28 tháng 8 năm 2013 trq
Đăng ngày 28 tháng 8 năm 2013 Bạn đang sử dụng giao thức sai cho loại điều này. http không được thực hiện để làm những gì bạn yêu cầu về nó Hàm Nginx là máy chủ web được sử dụng rộng rãi bởi nhiều tính năng tuyệt vời của nó. Bạn có thể cài đặt Nginx, PHP và MySQL trên Windows để trải nghiệm Nếu như bạn đã chạy máy chủ web ở máy chủ cục bộ trên máy tính để thử trải nghiệm các trang web trên Windows, chắc chắn bạn đã sử dụng qua Apache thông qua XAMPP, Apache Lounge… Nếu yêu thích Nginx, bạn cũng có thể cài đặt Nginx trên Windows . Nếu bạn chưa biết đến Nginx hoặc chưa sử dụng nó, bạn có thể trải nghiệm nó ngay trên Windows của mình Bài viết này sẽ hướng dẫn bạn cài đặt Nginx chạy PHP thông qua FastCGI và MySQL trên Windows 7/8/10 một cách dễ dàng nhất. Bạn có thể cài đặt chúng trên ổ đĩa D, E hoặc trên tùy chọn USB. Khi bạn cài lại Win hay Ghost cũng không sợ mất dữ liệu trên Nginx và MySQL nhéĐể truy cập vào các thư mục cài đặt và cấu hình của Nginx, PHP và MySQL, bạn nên tạo một thư mục để chứa tất cả chúng. Ở đây mình sẽ tạo một thư mục là Web trên ổ D, các bạn có thể lưu nó vào USB hoặc bất cứ đâu. Cài đặt NginxTrước tiên, bạn cần tải bản Nginx cho Windows và giải nén ở bất kỳ đâu mà bạn muốn. Mình sẽ giải nén và đổi tên thư mục thành nginx cho dễ nhìn và copy vào D. \Web, bạn sẽ có đường dẫn thư mục của Nginx là D. \Web\nginx Bây giờ bạn có thể chạy Nginx bằng cách chạy tệp nginx. exe trong thư mục D. \Web\nginx. Bạn cũng có thể khởi động Nginx, tải lại hoặc dừng Nginx bằng cách sử dụng lệnh qua cmd Để quản lý Nginx bằng lệnh trong cmd, bạn nên truy cập thư mục gốc của Nginx. Mở Command Prompt hoặc chạy cmd cd /d d:\Web\nginx Sau khi đã chuyển đến thư mục gốc của Nginx, bạn có thể sử dụng các lệnh sau start nginx # Khởi động nginx nginx -s stop # Dừng nginx nginx -s quit # Thoát nginx, cái này là thoát hết ứng dụng Nginx đang chạy nginx -s reload # Load lại nginx khi bạn thay đổi cấu hình của Nginx nginx -s reopen # Mở file logs Sau khi khởi động nginx, bạn truy cập http. //localhost xem sao
Cấu hình để Nginx chạy PHP FastCGI trên WindowsCũng như Linux CentOS hay Ubuntu, bạn có thể chạy PHP thông qua FastCGI bằng giao thức TCP. Để Nginx có thể giao tiếp với PHP thông qua FastCGI, bạn cần chỉnh sửa lại cấu hình tệp nginx. conf Mở tệp nginx. conf trong D. \Web\nginx\conf, tìm đến đoạn này và chính sửa lại như sau location / { root html; index index.php index.html index.htm; } location ~ \.php$ { root html; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; }
127. 0. 0. 1. 9000 là nơi PHP FastCGI sẽ xử lý các tệp PHP Tạo một tập tin phpinfo. php trong thư mục D. \Web\nginx\html với nội dung như sau để kiểm tra php Bây giờ, bạn thử Nếu bạn gặp lỗi 504 Hết thời gian chờ cổng như thế này là do bạn chưa cài đặt PHP trên Windows hoặc chưa cấu hình đúng cách. Bạn cần cài đặt PHP và cấu hình ở bước tiếp theo
Cài đặt PHP trên WindowsỞ đây mình sẽ hướng dẫn bạn cài đặt PHP trên Windows và chạy PHP thông qua CGI/FastCGI trên một địa chỉ TCP như đã cấu hình cho Nginx Bạn vào trang PHP cho Windows và tải xuống bản PHP mà bạn muốn về máy. Hiện tại đã có phiên bản PHP 7, bạn có thể tải về cài đặt để trải nghiệm cũng được. Ở đây mình sẽ chọn bản PHP 7 VC15 x64 Thread Safe
Các bạn tải và cài đặt các bản Visual C++ 32 bit hoặc 64 bit đúng theo bản PHP mà bạn chọn nhé Giải nén tệp ZIP của PHP mà bạn đã tải xuống một thư mục mới, ở đây mình chọn thư mục php7. Nếu bạn tải xuống phiên bản PHP 5 thì có thể đặt tên thư mục là php5 (hoặc là tải xuống và cài đặt cả hai). Sau đó sao chép thư mục php7 này vào D. \Web ngang hàng với thư mục gốc của Nginx để dễ quản lý nhé. Sau khi giải nén và sao chép, bạn sẽ có thư mục gốc PHP là D. \Web\php7 Tạo tập tin php. ban đầuTo create php file. ini cho PHP, you into root directory D. \Web\php7, sao chép tệp php. ini-Production to a new file and change name to php. ban đầu. Đây sẽ là file cấu hình cho PHP của bạn Configure to enable the extension for PHPĐể PHP của bạn hỗ trợ các tính năng hay các chức năng mà bạn muốn chạy trang web, bạn cần phải bật tiện ích mở rộng cho PHP. PHP extension hay còn gọi là các mô-đun PHP nằm trong thư mục ext, bạn cần khai báo nó trong php. ban đầu Mở tệp php. ini and tìm đến dòng sau và xóa dấu “;” extension_dir = "ext" Để bật các tiện ích mở rộng (mô-đun) cho PHP, hãy tìm đến các dòng ;extension= tương ứng với các mô-đun mà bạn muốn bật và xóa dấu “;” . Ví dụ ở đây mình sẽ bật module php_curl, php_fileinfo, php_gd2, php_mysqli như sau extension=php_curl.dll extension=php_fileinfo.dll extension=php_gd2.dll extension=php_mysqli.dll Như vậy là xong phần tạo file php. ini và bật các mô-đun cần thiết cho PHP của bạn. Đừng quên lưu file php. ini back nhé Cấu hình PHP FastCGI cho NginxTrong thư mục gốc PHP (D. \Web\php7), bạn sẽ nhìn thấy tệp php-cgi. người cũ. Bạn cần phải chạy tệp này trên một địa chỉ TCP giống như đã khai báo ở mục fastcgi_pass là 127. 0. 0. 1. 9000 Mở Command Prompt hoặc chạy cmd ________số 8_______Now now to http. // localhost/phpinfo. php to check xem nginx đã chạy chưa PHP Nếu bạn thấy mục Server API là CGI/FastCGI thì bạn đã chạy PHP FastCGI cho Nginx thành côngCài đặt MySQL trên WindowsMySQL là một trình quản lý cơ sở dữ liệu phổ biến, bạn có thể dễ dàng cài đặt MySQL trên Windows. Bạn cũng có thể thay vì cài đặt MySQL để có được hiệu quả tốt hơn Start and stop fast for Nginx, PHPNếu bạn không quen sử dụng lệnh để bắt đầu và dừng Nginx, PHP thì bạn có thể thay thế bằng cách sử dụng tập lệnh Khi khởi động PHP FastCGI trên TCP, bạn phải giữ cửa sổ Command Prompt để PHP có thể làm việc. Nếu bạn muốn ẩn cửa sổ này mà không làm mất kết nối PHP, bạn có thể sử dụng tiện ích RunHiddenConsole hữu ích
Vì vậy là bạn đã hoàn thành việc cài đặt Nginx, PHP và MySQL trên Windows một cách dễ dàng. Bây giờ chỉ là trải nghiệm theo cách của bạn thôi |