Tôi đang chạy máy chủ web Apache 2 chạy trên Ubuntu 20.04 LTS. Tôi đã bật trình xử lý Python CGI cho /var/www/html
thư mục, đó là Tài liệuRoot
. Tôi tự hỏi làm thế nào để loại trừ một thư mục nhất định chạy CGI cho các tệp Python.
Ở đây trong cấu hình CGI của tôi:
<Directory "/var/www/html">
Options +ExecCGI
AddHandler cgi-script .py
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.py -f
RewriteRule ^(.*)$ $1.py
</IfModule>
</Directory>
<Directory "/var/www/html/static/cdn">
DirectoryIndex disabled
Options +Indexes -ExecCGI
AllowOverride None
Require all granted
</Directory>
bên trong /tĩnh/cdn
thư mục, tôi muốn .py
các tệp sẽ được phục vụ giống như bất kỳ tệp tĩnh nào khác, thay vì được thực thi dưới dạng CGI. Đây là cây của cdn
danh mục:
.
âââ checkForUpdates.exe
âââ checkForUpdates.py
âââ findLogErrors
âââ botCriteria.json
âââ cleanup.json
âââ findLogErrors.exe
âââ version.json
1 thư mục, 6 tập tin
tôi có thể xem các chỉ mục của thư mục trong trình duyệt web, như mong muốn. Tôi có thể xem hoặc tải xuống bất kỳ tệp nào từ thư mục này ngoại trừ checkForUpdates.py
. Máy chủ không cố thực thi nó dưới dạng CGI, nó đang đưa ra lỗi 403. Các quyền trên checkForUpdates.py
giống như các tệp khác:
nbroyles@webserver:/var/www/html/static/cdn$ ls -altr
tổng cộng 15548
-rwxrwxr-x 1 web dữ liệu www 15901526 ngày 17 tháng 11 11:37 checkForUpdates.exe
drwxrwxr-x 7 web dữ liệu www 4096 ngày 19 tháng 11 11:13 ..
drwxrwxr-x 2 web dữ liệu www 4096 ngày 23 tháng 12 09:41 findLogErrors
drwxrwxr-x 3 web dữ liệu www 4096 ngày 23 tháng 12 09:49 .
-rwxrwxr-x 1 web dữ liệu www 2072 ngày 23 tháng 12 09:49 checkForUpdates.py
Làm thế nào tôi có thể xem .py
tập tin giống như bất kỳ .json
hoặc .exe
các tập tin? Tôi chắc chắn rằng có điều gì đó đơn giản mà tôi đang thiếu trong tệp config. Bất kỳ trợ giúp nào cũng được đánh giá rất cao!