gpt4 book ai didi

php - 保护对远程 php 脚本的调用

转载 作者:可可西里 更新时间:2023-11-01 00:16:31 24 4
gpt4 key购买 nike

  1. 我在服务器上有一个更新数据库的 PHP 脚本。

  2. 我希望能够从远程调用此脚本,无论是从另一台服务器还是我的本地主机 PC 使用 GET,或从浏览器使用 AJAX,

  3. 但我不希望任何人能够调用此脚本,除非允许。

到目前为止,我只是在脚本中添加了一段代码来验证 GET 中的某个 pin,即

//myscript.php

if( isset($_GET['pin']) && $_GET['pin'] === '1234' )
{
//update the DB...

通过这种方式,远程调用者必须知道 pin,即

file_get_contents(http://remoteserver.com/myscrip.php?pin=1234); //will work
file_get_contents(http://remoteserver.com/myscrip.php?pin=5678); //will NOT work

这看起来很简单,我想知道它是否安全。

还有哪些其他可能的更安全的替代方案(可能不会太复杂)?

例如,我读到过有关使用随时间变化的散列的信息,但这是否值得,如何实现?

最佳答案

您可以使用密码保护该文件夹(如果您使用的是 cpanel 或 plesk,则可以轻松完成)并使用 curl 访问该 url。

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_USERPWD, $username . ':' . $password);
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY);
$output = curl_exec($ch);
$info = curl_getinfo($ch);
curl_close($ch);

关于php - 保护对远程 php 脚本的调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7529937/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com