Dev với server nginx
Contents
1. Cài đặt Nginx
http://nginx.org/en/download.html
Sau đó giải nén nó ra. Ở đây mình sẽ để trong thư mục D:\Server\nginx cho tiện theo dõi.
Bây giờ bạn chỉ cần chạy file nginx.exe lên là xong.
Hoặc start bằng lệnh:
D: cd D:\Server\nginx 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 xong. Bạn hãy mở trình duyệt lên và truy cập vào http://localhost
Nếu nó ra như thế này thì là ổn:
2. Cài đặt PHP
https://windows.php.net/download/
Các bạn giải nén nó ra và lưu vào thư mục tương ứng. Ví dụ PHP 7.4 thì lưu trong thư mục php74, PHP 5.6 thì lưu trong thư mục php56
Ngay tại thời điểm này thì mình chọn bản mới nhất PHP 7.4.4 – VC15 x64 Thread Safe Nên mình lưu vào thư mục là D:\Server\php74
Mình có thể tải nhiều phiên bản PHP khác nhau để trải nghiệm hoặc để phục vụ mục đích chạy nhiều phiên bản PHP trong quá trình dev.
2.1 Cấu hình php.ini
Mở file php.ini và tìm đến dòng sau và xóa dấu “;” ở trước dòng đó:
extension_dir = "ext"
Mẫu cấu hình dev Laravel. Đề xuất bạn thêm hết vào cuối file.
;extension=php_bz2.dll extension=php_curl.dll extension=php_fileinfo.dll extension=php_ftp.dll extension=php_gd2.dll extension=php_gettext.dll extension=php_gmp.dll extension=php_intl.dll ;extension=php_imap.dll ;extension=php_interbase.dll ;extension=php_ldap.dll extension=php_mbstring.dll extension=php_exif.dll extension=php_mysqli.dll ;extension=php_oci8_12c.dll ;extension=php_odbc.dll extension=php_openssl.dll ;extension=php_pdo_firebird.dll extension=php_pdo_mysql.dll ;extension=php_pdo_oci.dll ;extension=php_pdo_odbc.dll ;extension=php_pdo_pgsql.dll ;extension=php_pdo_sqlite.dll ;extension=php_pgsql.dll ;extension=php_shmop.dll
memory_limit = 256M upload_max_filesize = 100M post_max_size = 100M error_reporting = E_ALL display_errors = On
Start PHP:
D:\Server\php74\php-cgi.exe -b 127.0.0.1:9074
Ở đây mình sẽ cho php-cgi listen ở port 9074. Tương ứng nếu php 7.3 thì listen ở port 9073.
Lý do là mình sẽ dùng để chạy nhiều phiên bản PHP cùng một lúc.
3. Cấu hình PHP FastCGI cho Nginx
location / { root html; index index.php index.html index.htm; } location ~ \.php$ { root html; fastcgi_pass 127.0.0.1:9074; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; }
- Bỏ các dấu “#” ở trước mỗi dòng.
- Thêm index.php vào trước “index.html”.
- Thay đổi /scripts thành $document_root.
- Thay đổi 127.0.0.1:9000 thành 127.0.0.1:9074 để chạy PHP 7.4 hoặc 127.0.0.1:9073 để chạy PHP 7.3 như ở trên mình đã đề cập.
4. Kiểm tra xem Nginx và PHP
Tạo một file phpinfo.php trong thư mục D:\Server\nginx\html với nội dung như sau để test php:
<?php phpinfo();
Bây giờ, bạn thử start nginx
hoặc nginx -s reload
lại và vào địa chỉ http://localhost/phpinfo.php
để test.