Thông tin liên hệ
- 036.686.3943
- admin@nguoicodonvn2008.info
Fcgiwrap là một server đơn giản dùng để chạy các ứng dụng CGI qua FastCGI. Chúng ta có thể sử dụng nó để cung cấp hỗ trợ CGI sạch cho webserver nginx. Nó là một máy chủ nhẹ với các tùy chọn cấu hình bằng không, cho phép sử dụng cùng một nhóm để chạy các trang web khác nhau. Dưới đây là cách cài đặt fcgiwrap trên Ubuntu 20.04.
CGI (Common Gateway Interface) là phương pháp ban đầu để tạo các trang web động. Hướng dẫn dưới đây giả định rằng bạn đã cài đặt và có cấu hình máy chủ Nginx trên Ubuntu Linux 20.04 LTS.
Mở terminal và nhập các lệnh sau để cập nhật các gói đã cài đặt bảo mật trên Ubuntu 20.04:
$ sudo apt update
$ sudo apt upgrade
Để cài đặt các gói fcgiwrap cho Nginx, hãy chạy lệnh sau với tư cách root user với sự trợ giúp của [nixmcd name=”apt”]:
$ sudo apt install fcgiwrap
Sử dụng lệnh systemctl như sau:
$ sudo systemctl enable fcgiwrap
$ sudo systemctl start fcgiwrap
$ sudo systemctl status fcgiwrap
Bây giờ, chúng ta đã cài đặt fcgiwrap, tiếp theo là tạo cấu hình mới cho tệp FastCGI:
sudo nano /etc/nginx/fcgiwrap.conf
Nối các cấu hình sau:
location /cgi-bin/ {
# Disable gzip (it makes scripts feel slower since they have to complete
# before getting gzipped)
gzip off;
# Set the root to /usr/lib (inside this location this means that we are
# giving access to the files under /usr/lib/cgi-bin)
root /usr/lib;
# Fastcgi socket
fastcgi_pass unix:/var/run/fcgiwrap.socket;
# Fastcgi parameters, include the standard ones
include /etc/nginx/fastcgi_params;
# Adjust non standard parameters (SCRIPT_FILENAME)
fastcgi_param SCRIPT_FILENAME /usr/lib$fastcgi_script_name;
}
Chỉnh sửa nginx.conf hoặc file domain ảo. Ví dụ:
sudo nano /etc/nginx/nginx.conf
## OR ##
sudo nano /etc/nginx/sites-enabled/default
Tiếp theo, xác định vị trí server và thêm chỉ thị sau:
## Trun on /cgi-bin/ support to run CGI apps ##
include /etc/nginx/fcgiwrap.conf;
Lưu và đóng file. Tải lại hoặc khởi động lại server Nginx:
$ sudo nginx -t
$ sudo nginx -s reload
Viết một script CGI cơ bản bằng FastCGI khá đơn giản. Trước tiên, chúng ta phải tạo một thư mục cgi-bin trong /usr/lib/ bằng cách sử dụng lệnh mkdir:
$ sudo mkdir -vp /usr/lib/cgi-bin/
mkdir: created directory '/usr/lib/cgi-bin/'

Mở trình soạn thảo văn bản và tạo tệp sau:
sudo vi /usr/lib/cgi-bin/hello.cgi
Nối mã bash sau:
#!/usr/bin/env bash
echo "Content-type: text/html"
echo ""
now="06/07/2020"
echo '<html><head><title>Hello World - CGI app</title></head>'
echo '<body>'
echo '<h2>Hello World!</h2>'
echo "Computer name : $HOSTNAME<br/>"
echo "The current date and time : ${now}<br/>"
echo '</body>'
echo '</html>'
Đặt quyền thực thi trên /usr/lib/cgi-bin/hello.cgi bằng lệnh chmod và lệnh chown:
$ sudo chmod +x -v /usr/lib/cgi-bin/hello.cgi
mode of '/usr/lib/cgi-bin/hello.cgi' changed from 0644 (rw-r--r--) to 0755 (rwxr-xr-x)
Kiểm tra bằng cách mở trình duyệt web và nhập url:
https://your-domain-here/cgi-bin/hello.cgi
## For instance ##
https://www.cyberciti.biz/cgi-bin/hello.cgi
Bạn có thể viết các ứng dụng hoặc script CGI bằng bất kỳ ngôn ngữ lập trình nào. CGI cho các app/script có thể xuất hiện đơn giản và dễ dàng, nhưng để viết được các ứng dụng đó lại không hề đơn giản.
Nguồn tin: Quantrimang.com
Ý kiến bạn đọc
Những tin mới hơn
Những tin cũ hơn
TOP công cụ AI tạo trò chơi khăm hài hước nhất
TOP ứng dụng AI xóa phông nền ảnh "ảo diệu" nên thử
70+ cheat code ChatGPT xử lý nội dung nhanh hơn
Hướng dẫn sử dụng GetLayers AI tạo website bằng AI
Mẫu Prompt giúp bạn "giao trọn" dự án cho AI khi sử dụng ChatGPT-6 Astra
TOP công cụ AI tạo sticker thú vị và độc đáo
TOP ứng dụng theo dõi thói quen tích hợp AI
AI agent đang học cách mua sắm
TOP ứng dụng AI mã nguồn mở đáng thử nhất
Kiểm tra Copilot Studio agent
TOP mô hình AI mã nguồn mở nổi bật nhất
Cách biến Claude thành người đồng hành cùng bạn động não
TOP công cụ AI lên kế hoạch học tập hữu ích cho học sinh, sinh viên
Cách sử dụng Gemini cải thiện nội dung Google Slides
Các ứng dụng thay đổi kiểu tóc bằng AI
Cách tạo video tóm tắt từ tài liệu bằng Google Vids
Cách tạo video AI quay bằng drone trên Google Flow
Hướng dẫn tạo slide trình chiếu bằng NotebookLM và Canva
Cách tạo phụ lục và giáo án tích hợp NLS, ANQP, GDĐĐ trên NotebookLM
Google Flow sử dụng những model AI tạo video nào?