有关所需/包含在PHP文件,是它更好地使用.inc
扩展VS .inc.php
VS .php
扩展?PHP包含文件扩展名?
回答
有时候人们使用.inc
扩展名,然后做一些服务器配置,以保持.inc
文件不被通过网络浏览器访问。这可能是好的,如果做绝对正确的知识渊博的系统管理员,但有一个更好的办法:那不是应该由网络用户访问应保持你的文档根目录之外的任何文件。一旦这些文件脱离网络,可以说,你可以使用任何你想要的扩展名。 .php
绝对是语法突出显示,普遍理智等的明智选择。
+1,用于防止配置错误的服务器。 – cbednarski 2010-08-02 20:01:10
将.inc文件放在'public_html'上面的目录中怎么办? – ina 2010-08-02 20:28:31
没问题,如果你想这样做。但是,使用'.inc'扩展名没有很好的理由破坏了自然文件关联。 (没有性能优势,正如你上面的评论所要求的那样。) – grossvogel 2010-08-02 20:33:53
Apache可以有时(由于错误或严重的崩溃)担任.php文件为文本(happend给我几次在共享主机)......我想,只要你可以使用任何你想要的扩展,你不要不要将您的文件存储在公用文件夹中。
比方说,你的网站是在/ home /用户/的public_html/
创建另一个文件夹/ home/user中/ lib_php/
有文件:
(1)。与
class one {
//...
}
01 ../lib_php/one.class.php(2).../lib_php/two.function.php与
function two() {
//...
}
,你必须在/的public_html
<?php
include_once('../lib_php/one.class.php');
include_once('../lib_php/two.function.php');
$x=a; $b=two($x); $c=new one; //etc..
或
<?php
require_once('/home/user/lib_php/the.file.php');
这样,你是主要的index.php采取一切预防措施的文件是不能直接到达,但可以通过你的脚本中使用...
我通常将函数放在静态类中并使用__autoload()函数。这样我就不必费心使用includes了,速度损失与通过不必记住包含路径(或发现错别字)而节省的时间相比较小。 – 2010-08-04 18:35:57
我个人的偏好是在文档根什么是PHP文件,以表明它直接发由Web服务器,以及任何这是一个图书馆xecutable是存储在一个平行目录中的文件。公司,以表明它不是直接执行。
我的标准配置是
/home/sites/example.com/html/
- 任何这里是“安全”的揭露,如果PHP失败,并且提供了原代码
/home/sites/example.com/inc/
- 图书馆,带有密码的配置文件(例如,DB数据库连接类证书)等。任何不应该暴露的东西,因为没有理由。
因为你可以将Apache配置为拒绝访问.inc文件并将其放在根目录里面,然后你根据Apache来保证你的安全。如果PHP可能在Apache内发生故障并暴露您的代码,那么.inc块也可能会失败并公开您的代码的内部。
当然,如果Apache的咳嗽遍布整个地板,那么没有理由认为目录遍历保护不会失败,并让别人去做http://example.com/../inc/seekritpasswords.txt。
在某些情况下,您只需接受如果某件事存储在Web服务器上的任何位置,就有可能出现故障可能允许访问原始数据并公开所有信息。你想花费多少时间和精力来防止这种情况取决于你。
- 1. 文件不包含c扩展名
- 2. C包含文件扩展名
- 3. 包括:css文件扩展名为php?
- 4. PHP包含文件扩展名最佳做法
- 5. php文件扩展名
- 6. 提取文件名(不含扩展名)
- 7. 在Windows 7文件扩展名中搜索包含'#'的文件
- 8. Python:获取包含特定文件扩展名的文件夹
- 9. DOS - 重命名包含扩展名的文件
- 10. 使包含扩展名的文件名不显示在URL中?
- 11. 包含并扩展相同的文件?
- 12. PHP文件名和扩展名恢复
- 13. php包含/名义文件?
- 14. .glg文件扩展名的含义?
- 15. C#替换包含“。”的文件名与“”但删除文件扩展名
- 16. Python正则表达式匹配整个文件名包含文件扩展名
- 17. 访问一个网站home文件不包含文件名和扩展名
- 18. PHP - 识别附件文件扩展名
- 19. 为文件扩展名中包含的文件扩展名启用语法高亮
- 20. 将SequenceFileInputFormat扩展为包含文件名+偏移量
- 21. 如何隐藏扩展名和包含的文件夹.htaccess的
- 22. 编辑php.ini文件以包含mysqli的扩展名
- 23. 要包含而不是排除的文件扩展名 - Subversion
- 24. 网站地图网址是否应包含文件扩展名?
- 25. 检查argv是否包含特定的文件扩展名
- 26. magit-grep,如何包含或排除文件扩展名?
- 27. 在蚂蚁中包含多个文件扩展名
- 28. 通过ssh递归rsync,只包含一个文件扩展名
- 29. 必须外部js文件包含.js扩展名吗?
- 30. 包含后扩展
我想知道处理/加载方面 - inc文件的处理方式不同吗? – ina 2010-08-02 20:19:27
没有区别。 – jmz 2010-08-02 23:01:42