Я использую веб-сервер Apache 2, работающий на Ubuntu 20.04 LTS. У меня включен обработчик Python CGI для /var/www/html
каталог, который является DocumentRoot
. Мне интересно, как исключить определенный каталог из запуска CGI для файлов Python.
Вот в моей конфигурации CGI:
<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>
в /статический/cdn
каталог, я хочу .py
файлы, которые будут обслуживаться так же, как и любой другой статический файл, вместо того, чтобы выполняться как CGI. Вот дерево из cdn
каталог:
.
ââ checkForUpdates.exe
✓ CheckForUpdates.py
âââ findLogErrors
âââ botCriteria.json
âââ cleanup.json
âââ findLogErrors.exe
âââ версия.json
1 каталог, 6 файлов
я способен на увидеть индексы каталога в веб-браузере, по желанию. Я могу просмотреть или загрузить любой файл из этого каталога, кроме checkForUpdates.py
. Сервер не пытается выполнить его как CGI, он выдает ошибку 403. Разрешения на checkForUpdates.py
такие же, как и другие файлы:
nbroyles@webserver:/var/www/html/static/cdn$ ls -altr
всего 15548
-rwxrwxr-x 1 www-data web 15901526 17 ноября 11:37 checkForUpdates.exe
drwxrwxr-x 7 www-data web 4096 19 ноября 11:13 ..
drwxrwxr-x 2 www-data web 4096 23 декабря 09:41 findLogErrors
drwxrwxr-x 3 www-data web 4096 23 декабря 09:49 .
-rwxrwxr-x 1 www-data web 2072 23 декабря 09:49 checkForUpdates.py
Как я могу просмотреть .py
файл, как и любой из .json
или же .исполняемый
файлы? Я уверен, что есть что-то простое, чего мне не хватает в моей конфигурации. Любая помощь приветствуется!