Apache2 + fcgid скачать скрипт, когда строка запроса заканчивается на ".php"
Я перевожу сервер apache2+php в mod_fcgid, и когда я пытаюсь получить доступ к ссылке, заканчивающейся на ".php", сервер распечатывает исходный код php.
GET: http://host/?inc=test.php
Does download of the index.php script
Но когда я исправляю index.php работает.
GET: http://host/index.php?inc=test.php
Show the correct page content
В моем конфиге сайта:
Options Indexes FollowSymLinks MultiViews +ExecCGI
AllowOverride AuthConfig FileInfo Limit
AddHandler fcgid-script .php
FcgidWrapper /var/www/cgi-bin/fcgi-starter .php
Где fcgi-starter - это пользовательский sh для переноса /etc/php5/cgi
#!/bin/sh
PHPRC=/etc/php5/cgi/
export PHPRC
export PHP_FCGI_MAX_REQUESTS=5000
export PHP_FCGI_CHILDREN=8
exec /usr/lib/cgi-bin/php
Как изменить конфигурацию, чтобы игнорировать строку запроса?
С уважением
1 ответ
Я думаю, что вопрос лучше для ServerFault. Но я думаю
?inc=test.php
не очень хорошее решение. Я надеюсь, что вы запретили удаленному включению взломать ваш сайт и прочитать файлы с вашего сервера.
если вы теперь используете этот файл включения каждый раз как php-файл, то удалите .php из вашего URL и добавьте их в свой скрипт.
Но лучше, когда вы определите это в своем скрипте, тогда у вас не будет никаких проблем.
$incFile = false;
switch($_GET['inc']):
case 'test':
$incFile = 'test.php';
break;
default:
$incFile = 'nofile.php';