根据某人的建议,我将所有PHP文件放在与htdocs相同级别的单独文件夹(inc)中。只有index.php留在htdocs中。所以,就像这样:
C:\ MyProject的\ htdocs中
- index.php
C:\ MyProject的\ INC
- login.php
- util.php
- register.php
...
现在,当我在浏览器中访问localhost时,index.php已经过处理并正确显示。但找不到任何其他php文件的链接。我尝试在“inc”之前添加链接,但仍未找到它们。我该怎么办?
我的php.ini文件有这一行(它在Windows上):
include_path =“.; C:\ myproject \ inc”
答案 0 :(得分:3)
包含目录的目的是放置您不希望Web服务器访问的文件。如果需要通过以下URL访问login.php:
http://yourdomain.com/login.php
然后不要将login.php放在include目录中。将util.php放在include目录中是有道理的,因为你永远不会想要这个:
答案 1 :(得分:1)
您不能将网络可访问的文件放在htdocs文件夹之外,您应该使用“inc”文件夹来存储“database_functions.inc”等文件,这些文件不应该直接在您的浏览器中打开:
http://localhost/index.php // directly accessible - goes in htdocs
http://localhost/login.php // directly accessible - goes in htdocs
http://localhost/register.php // directly accessible - goes in htdocs
http://localhost/util.php // you don't want people loading this file directly - put in 'inc'
http://localhost/database_functions.php // you don't want people loading this file directly - put in 'inc'
答案 2 :(得分:0)
我相信你需要转义php.ini中的反斜杠 - 所以它应该是C:\\myproject\\inc
。但正如其他人所指出的那样,您将无法使用浏览器访问include目录中的PHP文件,因为Web服务器将不允许访问htdocs树之外的目录。