Назад | Перейти на главную страницу

AddHandler для PHP с другим расширением файла

Я пытаюсь настроить размещенный сервер Apache через .htaccess, для выполнения файлов с .asp расширение с помощью PHP. Но я не знаю, что правильно handler-name для AddHandler является.

Причина в том, что у нас есть флэш-приложение, которое запрашивает GET .asp файлы. Мы перепишем .asp файлы на PHP, но мы можем не изменить флеш-приложение (у нас даже нет исходного кода).

Я пытался использовать AddHandler и AddType директивы.

AddHandler php-fcgid .php .asp
AddType application/x-httpd-php .asp
AddHandler application/x-httpd-php7 .asp

Примеры директив, которые я пробовал безрезультатно

Большинство дает Не указан входной файл. или установите тип пантомимы на application/x-httpd-php для .php файлы (технически установка Content-Type HTTP-заголовок).

Теперь я полностью понимаю AddHandler и AddType - лучший ресурс, который я нашел, это https://www.webmasterworld.com/apache/4557229.htm#msg4557505.

Хост имеет то, что выглядит как настраиваемая панель управления для администрирования сервера. Я могу изменить версию PHP с 5.4 на 7.0 и изменить некоторые настройки в php.ini.

Я загрузил phpinfo(); и некоторые значения, которые я считаю актуальными, размещены ниже. Версия Apache неизвестна, поскольку она просто сообщает Server: Apache. Но уверен, что это как минимум Apache2, так как Обработчик Apache 2.0 находится в списке модулей SAPI.

Как я могу понять, какой правильный handler-name для AddHandler является?

Версия PHP 7.0.9

Server API  CGI/FastCGI
Configuration File (php.ini) Path   /compile/php70/dest/lib
Loaded Configuration File   /etc/custom_php_config/slavespillet.dk/php.ini
Scan this dir for additional .ini files     (none)
Additional .ini files parsed    (none)
PHP API     20151012

cgi-fcgi

Directive   Local Value Master Value
cgi.check_shebang_line  1   1
cgi.discard_path    0   0
cgi.fix_pathinfo    1   1
cgi.force_redirect  1   1
cgi.nph 0   0
cgi.redirect_status_env no value    no value
cgi.rfc2616_headers 0   0
fastcgi.logging 1   1

Ядро

PHP Version     7.0.9
$_SERVER['SERVER_SOFTWARE'] Apache

Обходной путь / альтернатива - просто переписать .asp просьба к .php и храните свои файлы как обычные .php файлы - предполагая .php файлы обслуживаются правильно. Используя mod_rewrite, вы можете сделать что-то вроде следующего в своем корне .htaccess файл:

RewriteEngine On
RewriteRule ^(.+)\.asp$ $1.php [L]

Это бы внутренне переписать запрос на /path/to/something.asp к /path/to/something.php.