【发布时间】:2020-05-19 02:19:51
【问题描述】:
我有一个 php 网站,它必须在树莓派上本地运行。
该网站包含控制硬件设备的命令。
本地 URSL 如下所示:http://localhostname
远程 URL 如下所示:https://www.url.com/project
文件结构(简化)是:
本地树莓派:index.php
远程服务器:login.php 和 database.php
index.php 应该包含 database.php,以便建立数据库连接并处理数据传输。
我有两个问题我不知道如何处理。
一方面,我不希望数据库 php 文件本地存储在 rapsberry pi 上。这样每个人都可以看到凭据。另一方面,我不能在 index.php 中包含 database.php 文件,因为它是远程的,而 php 不允许这样做。
SESSION 和 COOKIE 处理也是一个问题。登录 (login.php) 过程存储在远程服务器上。一旦用户登录,SESSION 和 COOKIE 信息就会被存储。这些信息对远程服务器 URL ("/") 有效。一旦导航返回到本地 Raspberry Pi,SESSION 和 COOKIE 将不再有效,因为域/主机名发生了变化。这样我就无法检查用户登录是否成功。只要用户没有成功登录,用户就不能访问 index.php。
【问题讨论】:
-
所以基本上登录是通过远程站点完成的,而功能是在本地处理的?您可以让本地端轮询(或 webhook)登录远程服务器的人。
-
正确,所以不是使用数据库凭据,而是指使用 Rest(ful) 调用?
-
数据库在哪里?
-
您可以包含远程 PHP 文件,但这可能会出现问题。
-
@Daniel,保留数据库凭据。在远方。然后,远程端可以有一个脚本来返回所有登录的用户。本地端可以使用安全的
curl调用来获取这些结果。
标签: php local communication remote-server