我正在寻找一种方法让apache服务器知道我的.txt包含php可执行代码,并且应该执行。我希望这可以让浏览器和用户认为该文件是一个.txt文件,而实际上它是一个php文件。PHP - 在apache上制作.txt文件可执行文件
例如:
的test.txt
<?php echo "Hello World"; ?>
我正在寻找一种方法让apache服务器知道我的.txt包含php可执行代码,并且应该执行。我希望这可以让浏览器和用户认为该文件是一个.txt文件,而实际上它是一个php文件。PHP - 在apache上制作.txt文件可执行文件
例如:
的test.txt
<?php echo "Hello World"; ?>
要在特定的文件中运行此而已,下面AddType将工作:
<Files test.txt>
AddType application/x-httpd-php .txt
</Files>
对于文件没有扩展名:
<Files test>
ForceType application/x-httpd-php
</Files>
如果这给您带来问题,您可能需要使用application/x-httpd-php5
(注意“5”),具体取决于您的环境设置。
只需放置在您的服务器/虚拟主机配置或.htaccess文件中。
如果它没有扩展会怎么样? – NinjaStars
@ user2789433在这种情况下(但为什么?),您需要[ForceType](http://httpd.apache.org/docs/2.2/mod/core.html#forcetype)该文件。我已经更新了我的答案。 –
forcetype是否不安全或有问题? – NinjaStars
如果你想运行其他的文件扩展名作为PHP,编辑.htaccess指定文件类型。例如,作为运行PHP .TXT:
AddType application/x-httpd-php .txt
中的[隐藏PHP](http://php.net/manual/security.hiding.php)如何为特定的test.txt? – NinjaStars
@ user2789433查看我的回复,我的解决方案仅适用于特定文件。 –
@MichaelP我还没有试过......会吗? –
可能重复的[是否有可能使用扩展名file.php.jpg执行PHP?](http://stackoverflow.com/questions/8025236/is-it-possible-to-execute-php-with-extension -file-php-jpg) – Phil
另请参阅手册 – Phil