我非常清楚 PHP 是一种服务器端语言,因此不应允许下载 php 文件。但是,在 Chrome 中直接访问 PHP 文件时,它会下载文件的混淆版本,这是我想阻止的。有没有办法阻止文件被提供?
代码如下。
该系统在 WordPress 中运行完美,但如果我打开 Chrome(我想是其他人)并直接访问 update.php 文件,它会下载。
值得注意的是,我试图回显一个 HTML 页面,但它扰乱了系统的工作方式。我希望对此有某种 .htaccess 技巧。
if (isset($_POST['action'])) {
switch ($_POST['action']) {
case 'version':
echo '1.1';
break;
case 'info':
$obj = new stdClass();
$obj->slug = 'plugin.php';
$obj->plugin_name = 'plugin.php';
$obj->new_version = '1.1';
$obj->requires = '3.0';
$obj->tested = '3.3.1';
$obj->downloaded = 12540;
$obj->last_updated = '2012-01-12';
$obj->sections = array(
'description' => 'The new version of the Auto-Update plugin',
'another_section' => 'This is another section',
'changelog' => 'Some new features'
);
$obj->download_link = 'http://localhost/update.php';
echo serialize($obj);
case 'license':
echo 'false';
break;
}
} else {
header('Cache-Control: public');
header('Content-Description: File Transfer');
header('Content-Type: application/zip');
readfile('update.zip');
}