使用jQuery.get(),php的位置从javascript调用php文件?

时间:2015-07-11 04:22:01

标签: javascript php

在将此作为重复之前,请知道我在SO上阅读了许多类似的问题,但没有一个能回答我的疑问。

我正在尝试使用jQuery.get()

调用我的.php文件
$.ajax({
 url: url,
data: data,
success: success,
dataType: dataType
});

我正在使用wordpress和我试图调用php文件的javascript代码包含在页面的标题中。

我把php文件放在服务器根目录下的my-includes文件夹中,所以我可以使用url:/my-includes/xxx.php访问它。 (感谢转到OSDM for his answer

但现在可以使用domain-name / my-includes / xxx.php

进行公开访问

我的问题是 -

  1. 这是网站的运作方式吗?这不是安全隐患吗?

  2. 我是否可以让普通大众无法访问此文件但是仍然可以在我的网站上使用?

2 个答案:

答案 0 :(得分:1)

如果你像这样制作网址:url:' /folderintheroot/file.php'无论网址是什么,它都将从您网站的根目录开始。这里的关键是:' /'在开始。

关于安全问题。如果人们可以访问您的网站,这意味着他们可以看到从服务器发送到他们的计算机的所有内容。因此,当使用jquery.get()调用该脚本时,它完全相同。 基本上无论公众是什么,都是公开的。否则你必须开始使用登录名和密码,但这是另一回事。

你可以做一件事,见这里:Using .htaccess, prevent users from accessing resource directories, and yet allow the sourcecode access resources

答案 1 :(得分:0)

是的,这通常是网站的运作方式。您想要提供给客户的任何内容都必须可供他们访问 - 它还会如何进入他们的计算机?

是安全隐患吗?只有当你不希望别人看到这些数据时,如果是这种情况,那么你就不应该提供这些数据。对于仅应发送给选定个人而非使其普遍可访问的数据,您应使用某种形式的身份验证 - 仅在用户经过身份验证后才提供数据。

有无数种方法可以进行身份​​验证,请查看PHP best practices for user authentication and password security的一些想法。