gpt4 book ai didi

php - 如何在不提供远程访问的情况下将 mysql 数据库内容嵌入到第三方站点

转载 作者:可可西里 更新时间:2023-11-01 08:22:06 27 4
gpt4 key购买 nike

我正在编写一组基于 HTML 的资源,存储在我们服务器上的 mysql 数据库中。资源包含图像引用,这些引用存储为相对路径。

我可以登录到管理面板并非常轻松地创建和编辑资源。

这部分已经全部完成,并且运行良好。

但是,我们希望以两种方式提供此资源:打包和托管。提供实际问题的是托管解决方案:

我们想要托管数据库和所有图像资源,但是我们希望通过一组模板为其他用户提供对资源的访问权限,以便其他用户在他们自己的站点上托管。这样他们就可以相应地标记模板,并在他们自己的 URL 上提供资源,例如

http://www.example.com/discojoe

在这个过程中有两个问题让我很头疼:

• 我意识到提供对我们的 mysql 服务器的甚至只读访问权限的明显安全隐患。我想到的唯一选择是在我们的服务器上运行一些服务器端代码,当请求时,它会将请求的数据喷回给用户。这消除了他们拥有任何 mysql 连接的需要。

是否有我可以在线阅读的上述类型场景的任何示例,或者您能否就我将如何着手解决此解决方案提供一些建议?

• 对于我们向其流式传输数据的用户(如果上述解决方案可行),我如何才能在 HTML 内容中动态更新图像 SRC 值。虽然我希望它作为相对 URL 存储在数据库中,但当我从数据库中检索数据时,我想使用我指定的绝对 URL 将所有图像 src 从相对转换为绝对。

最佳答案

I realise the obvious security implication of providing even read-only access to our mysql server. The only alternative I think of is some server side code running on our server, which when requested, squirts the requested data back to the user. This removes the need for them to have any mysql connection.

你可以创建一个 REST API(我会返回 JSON)使用带有 PDO 准备语句的预定义查询(对 SQL 注入(inject)安全)。只要稍加小心,你就可以让它变得非常安全。当然,如果资源应该受到保护,您还必须使用简单的 API key 向您的系统添加身份验证。我认为您可以像防止 CSRF($token = md5(uniqid(rand(), TRUE));) 一样轻松地生成这些 key 。也许你应该多加一点entropy ,但我认为这就足够了。但是如果你想真正正确地做到这一点,你应该使用 oauth相反。


有一点 mod_rewriting你可以编写漂亮的 URL。

For users whom we stream the data to (if the above solution is sensible), how could I go about updating the image SRC value on the fly within the HTML content. Whilst I want it stored as a relative URL in the database, when I retrieve the data from the database, I want to convert all image srcs from relative to absolute, with the absolute URL that I specify.

我想你可以使用 any of the many available template languages为了达成这个。连jquery has one built-in

关于php - 如何在不提供远程访问的情况下将 mysql 数据库内容嵌入到第三方站点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4804426/

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