Php JQuery Post可以';无法到达根目录上的一个文件夹
我在谷歌或这里的关键词没有太多的运气,所以我问这个问题,尽管我确信它很琐碎 我想使用JQueryPhp JQuery Post可以';无法到达根目录上的一个文件夹,php,jquery,document-root,Php,Jquery,Document Root,我在谷歌或这里的关键词没有太多的运气,所以我问这个问题,尽管我确信它很琐碎 我想使用JQuery$.POST方法从位于服务器根目录上方的控制器请求信息。。。我在.ASP和J2EE中找到了答案,但不是简单的PHP/HTML/etc 此控制器不需要实例化,因此简单的URL应该足以发送信息并请求响应。我已经使用JQuery很长时间了,所以我不需要回答我是否在使用。请正确发帖,因为我已经使用这种AJAX方法两年多了。。。。只是不在MVC架构中 我有一个PHP MVC构建的网站,我正在运行,我基本上只是想
$.POST
方法从位于服务器根目录上方的控制器请求信息。。。我在.ASP和J2EE中找到了答案,但不是简单的PHP/HTML/etc
此控制器不需要实例化,因此简单的URL应该足以发送信息并请求响应。我已经使用JQuery很长时间了,所以我不需要回答我是否在使用。请正确发帖,因为我已经使用这种AJAX方法两年多了。。。。只是不在MVC架构中
我有一个PHP MVC构建的网站,我正在运行,我基本上只是想从我的控制器获取一些信息,所以我正在尝试这个$.post(“../../../../controller/controllerScript.PHP”,{…},function(){…})
。。。我还尝试分别删除每个。/
,并对每个进行了测试。没有运气。。。到目前为止,我得到了一致的错误404消息,它无法找到该文件。这对我来说很有意义,因为它位于服务器根目录之上,不应该公开访问
我知道这是因为我正在寻找服务器根目录上的文件,但我认为这应该是MVC的魔力,我可以将根目录设置为公用文件夹,并具有更高的安全性和清晰的编程。我知道问题可能在于需要一个我不擅长的.HTACCESS文件,或者其他一些URL重定向方法,但我不知道是哪种
我的服务器文件夹体系结构
-controller
-fileINeed.php
-model
-public
-js
-myPOSTfunction
-view
我认为一个简单的action=“../../../controller/fileined.php”
至少可以让我将表单提交到一个空页面,这样我就可以调试它了,但即使这样也找不到。它将URL更改为//BASE/controller/fileINeed.php
,我确信这是根目录以上文件的服务器安全性的一部分
有谁能很快让我接受MVC-101教育,让我知道我有多笨?lol问题是JQuery是客户端语言,因此仅限于文档根目录,无法在上面遍历,这是一个安全特性,因为如果JQuery可以在根目录上遍历,那么访问者也可以,这将导致重大安全问题。根据服务器的设置方式,您可以使用JQuery调用驻留在根目录中的php或任何其他服务器端应用程序,然后在该脚本中调用或引用位于其上方的应用程序 在public中创建调用方php\然后将其包含在其中
include('/home/controller/fileINeed.php');
请记住,您需要确定服务器根目录和公用文件夹之间的目录结构,并用它替换/home。有些人使用/www.我也这么想,但我真的必须通过index.php将其重定向回吗?somevar=无论什么路径?我有这么多的页面在这里浏览,这似乎很愚蠢或太多了。我也不想在名为from index.php的页面控制器类中创建另一个要实例化的对象(一个新的控制器obj)。我希望我的AJAX调用仍然是小的非类脚本。。。想法?我不会使用somevar=../parent root/app.php,因为这会使服务器受到攻击,就像拥有一个可公开访问的父根文件夹一样。您最好对include进行硬编码。我可以问一下为什么脚本需要在root之上吗?它们是控制器。正如我在文章中提到的那样,我认为使用四个文件夹控制器、模型、公共和视图来保持服务器文件夹链是合适的MVC体系结构。我想我可以把这个脚本放在公用文件夹中,我只是想学习实际的正确方法,因为我经常遇到这样的问题。@GoreDefex在公用文件夹中创建链接调用方是正确的方法,我只是好奇为什么,还有许多其他人也使用上述公共代码,但这并没有什么问题。太好了!现在,我们正在谈论这听起来更像是我在寻找的答案。你说的那个被锁住的来电者。是时候激活研究模式了!