htaccess cgi access

htaccess cgi access

  • CGI (Common Gateway Interface), là chuẩn giao tiếp giữa web server và các ứng dụng web như: PHP, Python, Perl, SSI, ...
  • Script của CGI thường được đặt bên trong thư mục cgi-bin, một số web server không cho phép bạn chạy script này bên ngoài thư mục cgi-bin, khi này chúng ta có thể dùng .htaccess để bật Script CGI bên ngoài /cgi-bin/, ta làm như sau:
AddHandler cgi-script .cgi
Options +ExecCGI

Từ chối truy cập folder CGI

  • Thỉnh thoảng bạn sẽ không muốn người dùng truy cập folder chứa file .cgi vì lý do bảo mật.
  • Khi này ta có thể sử dụng .htaccess để ngăn chặn việc truy cập folder như sau:
<directory "/var/www/cgi-bin/">
order deny,allow
deny from all
allow from env=REDIRECT_STATUS
</directory >
  • Giải thích nội dung trên:
    • <directory "/var/www/cgi-bin/"> Thao tác xử lý chỉ bên trong folder /cgi-bin/
    • order deny,allow: thứ tự ưu tiên theo deny trước, allow sau.
    • deny from all: sẽ từ chối tất cả truy cập.
    • allow from env=REDIRECT_STATUS: cho phép biến Apache nội bộ.
  • Điều đó có nghĩa là: không được phép truy cập vào folder /var/www/cgi-bin/, ngoại trừ biến nội bộ của Apache.