具有不同文件副檔名的 PHP 的 AddHandler
我正在嘗試通過 配置託管的 Apache 伺服器
.htaccess
來執行.asp
帶有 PHP 副檔名的文件。但我不知道正確handler-name
的AddHandler
是什麼。原因是我們有一個 GET 請求
.asp
文件的 flash 應用程序。我們將用 PHP 重新編寫.asp
文件,但我們無法更改 flash 應用程序(我們甚至沒有原始碼)。我嘗試使用
AddHandler
andAddType
指令。AddHandler php-fcgid .php .asp AddType application/x-httpd-php .asp AddHandler application/x-httpd-php7 .asp
我嘗試過的指令範例無濟於事
大多數給出*沒有指定的輸入文件。*或將 mime-type 設置
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
對to的請求/path/to/something.php
。