Lỗi bug trong Gmail Android cho phép bất cứ ai cũng có thể gửi email giả mạo
15 bức ảnh khoa học tuyệt đẹp trong năm 2015
Tổng hợp game mobile đua xe đáng chơi nhất 2015
Key bản quyền Sublime Text 3 (2015-2016)
Lenovo nói gì về sự cố máy tính cài sẵn phần mềm gián điệp?
Top 10 ngôn ngữ lập trình dễ bị Hack
Nguyễn Hà Đông giải thích lý do game mới Swing Copters 2 'từ chối' người Việt
Mark Zuckerberg học theo Iron Man: phát triển trợ lý ảo như 'Jarvis'
Nginx là phần mềm máy chủ web, hiện khá ổn định. Hiện đang được sử dụng trên 50 triệu tên miền Internet khác nhau, chiếm khoảng 10% toàn bộ lưu lượng Internet, theo các nhà phát triển phần mềm ước tính.Bài viết sau đây sẽ hướng dẫn bạn cách chi tiết để cài đặt cấu hình Nginx trên hệ điều hành Linux cho dòng Centos/Redhat/RHEL. Kết hợp với việc sử dụng FastCGI để biên dịch PHP script.
Bước đầu tiên khi bạn muốn cài Nginx, bạn nên kiểm tra các phần mềm máy chủ web khác cùng tính năng. Và có thể tắt chúng đi, hoặc Remove hoàn toàn nếu bạn có ý định chuyển hẳn sang dùng Nginx.
Thường với Centos thì máy chủ web hay dùng là Apache, hoặc có thể là Litespeed, Lighhttpd. Bạn tắt các phần mềm này bằng các câu lệnh sau:
Bước 1: Bật EPEL repo
Vì Nginx hiện chưa có trên thư viện phần mềm của Centos, nên bạn cần phải bật chức năng này để tiến trình YUM có thể nhận ra được nơi chứa Nginx để tiền hành cài đặt. Để kích hoạch EPEL repo bạn dùng lệnh sau:
#rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/$(uname -m)/epel-release-5-3.noarch.rpm
Bước 2: Cài đặt Nginx
#yum install nginx
Thông tin chi tiết về tiến trình cài đặt có dạng sau:
Sau khi hoàn thành tiến trình cài đặt, Nginx sẽ tạo ra một số thông số cơ bản được lưu trữ trong các thành phần sau:
File cấu hình chung của Nginx : /etc/nginx/conf.d/default.conf
File cấu hình cho chứng thư SSL nếu website sử dụng: /etc/nginx/conf.d/ssl.conf
File cấu hình cho dịch vụ chia server thành nhiều hosting: /etc/nginx/conf.d/virtual.conf
Thư mục gốc lưu trữ các file web của bạn: /usr/share/nginx/html
Bước 3: Cấu hình PHP để biên dịch script thông qua FastCGI
Chạy câu lệnh sau để cài đặt và cấu hình PHP với các modules cần thiết
Cài đặt Spawn-FCGI là một chương trình đơn giản để quản lý việc sinh ra tiến trình hoạt động trong FastCGI
Lưu ý: Một số trường hợp, khi bạn cài server tại Việt Nam có thể không cài đặt được spawn-fcgi theo cách trên, vì trên kho dữ liệu phần mềm của các Mirror tại Việt Nam không có, bạn có thể chạy lệnh kết hợp như sau:
Tiếp theo, cài tập lệnh điều khiển spawn-fcgi bằng dòng lệnh sau:
Chạy ứng dụng PHP tương tự như server biên dịch bằng dòng lệnh sau:
Bước 4: Cấu hình Nginx để thông dịch code PHP
Với Apache, việc thông dịch PHP script code khá đơn giản, vì Apache cung cấp sẵn 1 module có tính năng khi cần thông dịch PHP, Apache sẽ thông qua Module này gọi chương trình thông dịch trực tiếp để thực hiện. Ngoài ra, nếu bạn sử dụng FastCGI thì quy trình có phức tạp hơn một chút nhưng cũng dùng Module tích hợp sẵn. Và việc phải dùng FastCGI là không bắt buộc.
Nhưng với Nginx, để thông dịch được PHP, bắt buộc phải sử dụng FastCGI. Cơ chế hoạt động của Nginx cũng khác hoàn toàn. Ở đây, Nginx đóng vai trò như một Proxy, thông qua spawn-fcgi, sản sinh ra một tiến trình phục vụ cho thao tác thông dịch. Tiến trình này sẽ điều khiển PHP Server. Và PHP Server tiến hành thông dịch rồi trả kết quả ngược lại quy trình trên.
Vì vậy, để thông dịch được PHP, bắt buộc phải cấu hình cho Nginx làm việc với FastCGI và PHP server. Cũng vì thế, sau này nếu muốn chia server ra thành nhiều hosting, phục vụ cho nhiều domain khác nhau, thì mỗi hosting cũng phải cấu hình cho Nginx để thông dịch PHP.
Khi mới cài đặt Nginx, bạn cần cấu hình trong file /etc/nginx/conf.d/default.conf để kiểm tra hoạt động của Nginx và PHP.
Chi tiết file cấu hình như sau:
Sau bước này bạn đã hoàn tất quá trình cài đặt và cấu hình ban đầu Nginx web service.
Bước 5: Khởi chạy Nginx và kiểm tra
Để khởi chạy Nginx, bạn dùng dòng lệnh:
Thử tạo 1 file có tên index.php trong thư mục mặc định của Nginx là /etc/nginx/conf.d/default.conf với nội dung như sau:
Save lại, sau đó dùng trình duyệt bất kỳ truy cập vào địa chỉ:
Nếu kết quả trả về là trang bao gồm tổng thể các thông tin về chương trình PHP thì bạn đã thành công trong việc cài đặt Nginx và cấu hình FastCGI thông dịch PHP.
Nguồn : Vinazoom
Bước đầu tiên khi bạn muốn cài Nginx, bạn nên kiểm tra các phần mềm máy chủ web khác cùng tính năng. Và có thể tắt chúng đi, hoặc Remove hoàn toàn nếu bạn có ý định chuyển hẳn sang dùng Nginx.
Thường với Centos thì máy chủ web hay dùng là Apache, hoặc có thể là Litespeed, Lighhttpd. Bạn tắt các phần mềm này bằng các câu lệnh sau:
service httpd stopservice lsws stopservice lighhttpd stop
Bước 1: Bật EPEL repo
Vì Nginx hiện chưa có trên thư viện phần mềm của Centos, nên bạn cần phải bật chức năng này để tiến trình YUM có thể nhận ra được nơi chứa Nginx để tiền hành cài đặt. Để kích hoạch EPEL repo bạn dùng lệnh sau:
#rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/$(uname -m)/epel-release-5-3.noarch.rpm
Bước 2: Cài đặt Nginx
#yum install nginx
Thông tin chi tiết về tiến trình cài đặt có dạng sau:
Loaded plugins: downloadonly, fastestmirror, priorities, protectbaseLoading mirror speeds from cached hostfile* epel: archive.linux.duke.edu* base: ftp.linux.ncsu.edu* updates: centos.mirror.nac.net* addons: mirror.cs.vt.edu* extras: centos.mirror.nac.net0 packages excluded due to repository protectionsSetting up Install ProcessParsing package install argumentsResolving Dependencies--> Running transaction check---> Package nginx.x86_64 0:0.6.34-1.el5 set to be updated--> Finished Dependency ResolutionDependencies Resolved==============================================================================================================================================================Package Arch Version Repository Size==============================================================================================================================================================Installing:nginx x86_64 0.6.34-1.el5 epel 319 kTransaction Summary==============================================================================================================================================================Install 1 Package(s)Update 0 Package(s)Remove 0 Package(s)Total size: 319 kIs this ok [y/N]: yDownloading Packages:Running rpm_check_debugRunning Transaction TestFinished Transaction TestTransaction Test SucceededRunning TransactionInstalling : nginx [1/1]Installed: nginx.x86_64 0:0.6.34-1.el5Complete!
Sau khi hoàn thành tiến trình cài đặt, Nginx sẽ tạo ra một số thông số cơ bản được lưu trữ trong các thành phần sau:
File cấu hình chung của Nginx : /etc/nginx/conf.d/default.conf
File cấu hình cho chứng thư SSL nếu website sử dụng: /etc/nginx/conf.d/ssl.conf
File cấu hình cho dịch vụ chia server thành nhiều hosting: /etc/nginx/conf.d/virtual.conf
Thư mục gốc lưu trữ các file web của bạn: /usr/share/nginx/html
Bước 3: Cấu hình PHP để biên dịch script thông qua FastCGI
Chạy câu lệnh sau để cài đặt và cấu hình PHP với các modules cần thiết
#yum install php-pear-Net-Socket php-pear php-common php-gd php-devel php php-mbstring php-pear-Mail php-cli php-imap php-snmp php-pdo php-xml php-pear-Auth-SASL php-ldap php-pear-Net-SMTP php-mysql
Cài đặt Spawn-FCGI là một chương trình đơn giản để quản lý việc sinh ra tiến trình hoạt động trong FastCGI
yum install spawn-fcgi
Lưu ý: Một số trường hợp, khi bạn cài server tại Việt Nam có thể không cài đặt được spawn-fcgi theo cách trên, vì trên kho dữ liệu phần mềm của các Mirror tại Việt Nam không có, bạn có thể chạy lệnh kết hợp như sau:
#yum install nginx php-cli php make automake gcc gcc-c++ spawn-fcgi wget
Tiếp theo, cài tập lệnh điều khiển spawn-fcgi bằng dòng lệnh sau:
# wget http://bash.cyberciti.biz/dl/419.sh.zip# unzip 419.sh.zip# mv 419.sh /etc/init.d/php_cgi# chmod +x /etc/init.d/php_cgi
Chạy ứng dụng PHP tương tự như server biên dịch bằng dòng lệnh sau:
# /etc/init.d/php_cgi start# netstat -tulpn | grep :9000
Bước 4: Cấu hình Nginx để thông dịch code PHP
Với Apache, việc thông dịch PHP script code khá đơn giản, vì Apache cung cấp sẵn 1 module có tính năng khi cần thông dịch PHP, Apache sẽ thông qua Module này gọi chương trình thông dịch trực tiếp để thực hiện. Ngoài ra, nếu bạn sử dụng FastCGI thì quy trình có phức tạp hơn một chút nhưng cũng dùng Module tích hợp sẵn. Và việc phải dùng FastCGI là không bắt buộc.
Nhưng với Nginx, để thông dịch được PHP, bắt buộc phải sử dụng FastCGI. Cơ chế hoạt động của Nginx cũng khác hoàn toàn. Ở đây, Nginx đóng vai trò như một Proxy, thông qua spawn-fcgi, sản sinh ra một tiến trình phục vụ cho thao tác thông dịch. Tiến trình này sẽ điều khiển PHP Server. Và PHP Server tiến hành thông dịch rồi trả kết quả ngược lại quy trình trên.
Vì vậy, để thông dịch được PHP, bắt buộc phải cấu hình cho Nginx làm việc với FastCGI và PHP server. Cũng vì thế, sau này nếu muốn chia server ra thành nhiều hosting, phục vụ cho nhiều domain khác nhau, thì mỗi hosting cũng phải cấu hình cho Nginx để thông dịch PHP.
Khi mới cài đặt Nginx, bạn cần cấu hình trong file /etc/nginx/conf.d/default.conf để kiểm tra hoạt động của Nginx và PHP.
Chi tiết file cấu hình như sau:
server {listen 80;server_name localhost;root /usr/share/nginx/html;#charset koi8-r;#access_log /var/log/nginx/log/host.access.log main;location / {index index.php;}#error_page 404 /404.html;# redirect server error pages to the static page /50x.html## proxy the PHP scripts to Apache listening on 127.0.0.1:80##location ~ \.php$ {# proxy_pass http://127.0.0.1;#}# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000#location ~ \.php$ {include /etc/nginx/fastcgi_params;fastcgi_pass 127.0.0.1:9000;fastcgi_index index.php;fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html$fastcgi_script_name;include fastcgi_params;}# deny access to .htaccess files, if Apache's document root# concurs with nginx's one##location ~ /\.ht {# deny all;#}}
Sau bước này bạn đã hoàn tất quá trình cài đặt và cấu hình ban đầu Nginx web service.
Bước 5: Khởi chạy Nginx và kiểm tra
Để khởi chạy Nginx, bạn dùng dòng lệnh:
service nginx start
Thử tạo 1 file có tên index.php trong thư mục mặc định của Nginx là /etc/nginx/conf.d/default.conf với nội dung như sau:
<?phpphpinfo();?>
Save lại, sau đó dùng trình duyệt bất kỳ truy cập vào địa chỉ:
http://localhost
Nếu kết quả trả về là trang bao gồm tổng thể các thông tin về chương trình PHP thì bạn đã thành công trong việc cài đặt Nginx và cấu hình FastCGI thông dịch PHP.
Nguồn : Vinazoom
0 comments so far,add yours
Cám ơn đã ghé thăm BlogCNTT!
- Mọi thắc mắc, gợi ý hoặc bình luận xin chia sẻ bên dưới hoặc Liên Hệ
- Hãy viết bằng tiếng Việt có dấu để mọi người dễ đọc hơn!
Thank You!