Computer >> Máy Tính >  >> Lập trình >> Python

Làm thế nào để định cấu hình Apache cho Lập trình Python CGI?

Định cấu hình máy chủ Web Apache cho CGI

Để máy chủ của bạn chạy các tập lệnh CGI đúng cách, bạn phải định cấu hình máy chủ Web của mình. Chúng tôi sẽ thảo luận về cách định cấu hình máy chủ web Apache của bạn để chạy các tập lệnh CGI.

Sử dụng ScriptAlias ​​

Bạn có thể đặt một thư mục làm Chỉ thị ScriptAlias ​​(các tùy chọn để định cấu hình Apache). Bằng cách này, Apache hiểu rằng tất cả các tệp nằm trong thư mục đó đều là tập lệnh CGI. Đây có thể là cách đơn giản nhất để chạy CGI Scripts trên Apache. Một dòng ScriptAlias ​​điển hình trông giống như sau trong tệp httpd.conf của máy chủ web Apache của bạn.

ScriptAlias /cgi-bin/ /usr/local/apache2/cgi-bin/

Vì vậy, hãy tìm kiếm ScriptAlias ​​trong tệp httpd.conf của bạn và bỏ ghi chú dòng (bỏ dấu # đứng trước) nếu bạn muốn giữ tất cả các tệp CGI của mình trong thư mục mặc định do Apache chỉ định. Nhưng điều này có thể không đáp ứng yêu cầu của bạn luôn luôn. Vì vậy, chúng tôi sẽ xem xét một số tùy chọn khác cũng để chạy Python dưới dạng CGI.

Chạy CGI từ một thư mục cụ thể khác với thư mục mặc định

Bạn có thể sử dụng phần sau để chuẩn bị một thư mục cụ thể để chạy các tệp CGI.

<Directory /usr/local/apache2/htdocs/somedir>Options +ExecCGI</Directory>

Trong đó 'somedir' là thư mục tùy chọn của bạn.

Nếu bạn sử dụng cấu hình trên. thì bạn cũng phải chỉ định những điều sau để thông báo cho phần mở rộng máy chủ của các tệp CGI mà bạn sử dụng để chạy.

AddHandler cgi-script .cgi .pl

Vì vậy, phần trên yêu cầu Apache chạy các tệp có phần mở rộng .cgi và .pl dưới dạng CGI

Thư mục Người dùng

Nếu bạn muốn chạy các tệp CGI từ thư mục của người dùng, thì bạn có thể sử dụng cách sau -

<Directory /home/*/public_html>
Options +ExecCGI
AddHandler cgi-script .cgi
</Directory>

Ở trên nói Apache chạy tất cả các tệp có phần mở rộng .cgi có trong thư mục của người dùng dưới dạng CGI.

Một lần nữa, nếu bạn muốn chạy tất cả các tệp được đặt trong thư mục của người dùng dưới dạng CGI, thì bạn có thể sử dụng cách sau -

<Directory /home/*/public_html/cg-bin>
Options +ExecCGI
SetHandler cgi-script
</Directory>
Using .htaccess

Nếu bạn không có quyền truy cập vào tệp httpd.conf của mình, bạn có thể sử dụng tệp .htaccess để chạy các tập lệnh CGI. Để sử dụng các tệp có phần mở rộng nhất định dưới dạng CGI, hãy định cấu hình tệp .htaccess của bạn như sau -

Options +ExecCGI
AddHandler cgi-script cgi pl

Nếu bạn muốn chạy tất cả các tệp nằm trong một thư mục dưới dạng CGI, bạn có thể sử dụng cách sau -

Options +ExecCGI
SetHandler cgi-script