2

我有一个使用许多包含(用于页脚、电子邮件处理等)的网站。我也在使用 AJAX,它调用一个特定的 URL 来加载数据。我对这些文件应该在服务器上的位置感到有些困惑。我认为,出于安全原因,让公众看到文件或路径是个坏主意。但是,当我将文件放在 public_html 文件夹之外时,仅使用“./filename”是行不通的。

更新:除非我提供完整的路径名,否则包含不起作用。当我使用以下路径时收到错误包括:

<?php include('../includes/footer.php');?>

页脚文件位于以下路径:home/user/php/includes/footer.php。

我的网站位于:home/user/public_html/site.com/files

更新 2:我添加了一个新的 include_path:“/home/user/php”。我将包含更改为“includes/footer.php”。它现在工作正常。

但是,如果其他人对我原来的问题有任何想法,我将不胜感激。

4

3 回答 3

1

如果您的网站位于 something/public_html 您可以使用文件夹 something/include/footer.php

include '../include/footer.php'

对于包含,至于你把你的ajax文件放在哪里我认为这并不重要,人们可以查看javascript来找到地址在任何情况下

于 2011-05-21T18:22:57.797 回答
1

看起来您可能将它放在文档根目录之外。

如果您的网站必须位于 /home/user/public_html (或类似)中,请尝试将您的包含文件夹放入 /home/user/public_html/includes 并仅参考 /includes

是的,有一个论点是在公共可访问区域中没有文件,但是如果您对 PHP 文件进行了很好的编码,那应该不是问题。

人们看不到源代码,并且通过简单的错误捕获,例如用户登录,或者表单提交字段是否有值,您可以将它们引导回错误页面或您喜欢的任何地方。

于 2011-05-21T21:26:28.733 回答
0

如果请求,PHP 文件将首先由 PHP 处理。所以用户永远无法获得实际的 php 文件。只是它的输出。

于 2011-05-21T18:29:49.167 回答