我需要运行一个localhost php文件(不将其上传到我的网站)。
我的网站上有一个php文件calld myfile.php。这是代码。
<?php
include "local_file.php";
?>
有没有办法使这个程序工作,我将local_file.php存储在我的本地服务器(localhost)上,仍然使用上面存储在我网站上的代码(myfile.php)访问它?
答案 0 :(得分:0)
我相信你可以,你必须在php中禁用一个只允许本地包含的安全功能。然后,您需要使用静态IP或动态DNS设置指向您的本地。然后,您需要设置本地以共享文件。我不推荐这个,因为它打开了很多潜在的安全漏洞。以下是一些更多信息:
including php file from another server with php
您正在寻找的安全设置是:allow_url_include http://www.php.net/manual/en/filesystem.configuration.php#ini.allow-url-include
如果你打算走这条路线,我强烈建议阻止除了一个白名单IP地址之外的所有与本地主机的连接。
答案 1 :(得分:0)
您可以使用PHP的eval()
函数并通过HTTP加载代码作为明文(我假设您已经:安装了HTTP服务器,公共IP地址,路由器上的重定向端口)。
$code = file_get_contents("http://your_public_ip/local_code.txt");
eval($code);
请记住使用您的公共IP并将PHP代码存储在其他扩展名的文件中,这样代码就不会在localhost上执行。
通常,我强烈反对从远程位置执行代码,因为它是一个很大的安全漏洞。考虑是否需要执行包含的代码。如果您只想包含HTML代码或某些数据,请使用file_get_contents()
并使用echo
进行打印。