failed to open stream: No such file or directory 问题大全

本文针对PHP开发过程中遇到的“failedtoopenstream:Nosuchfileordirectory”错误进行了详细的分析,并提供了三种不同的解决方案,包括调整目录权限、使用dirname(__FILE__)进行路径定位以及替换中文路径等方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

failed to open stream: No such file or directory 问题大全,本文由烈火网小编收集整理,请在转载时保留出处。

案例一:

(failed to open stream: No such file or directory)在IIS下PHP环境配置的目录权限导致出错的问题

原因及解决方法:

配置环境为 IIS + php

如果确认你的程序在其他环境下下可以正常运行而唯独在Win 下的 IIS 出现类似如下的错误:

Warning: main(./Config.php): failed to open stream: No such file or directory in D:\wwwroot\Demo\Config.php on line 13

Fatal error: main(): Failed opening required './Config.php' (include_path='.;c:\php4\pear') in D:\wwwroot\Core\Config.php on line 13

这个问题主要是 由于Win NTFS盘下去除了everyone 权限引起的, 在安全权限中加个 Internet 来宾账号就解决了.

操作步骤: D盘 -> 属性 -> 安全 -> 添加 用户 IUSR_XXXXX OK

案例二:

问题就是: 
Warning: require_once(../lib/DBUtil.class.php) [function.require-once]: failed to open stream: No such file or directory in E:\phppro\dxh\service\ExpertService.class.php on line 2 

Fatal error: require_once() [function.require]: Failed opening required '../lib/DBUtil.class.php' (include_path='.;C:\php5\pear') in E:\phppro\dxh\service\ExpertService.class.php on line 2 

解决方法:

1.在require时加上dirname(__FILE__),像这样: require_once(dirname(__FILE__)."/../lib/DBUtil.class.php");

2.如下理解 require_once实例:

Copy to ClipboardLiehuo.Net Codes引用的内容:[www.veryhuo.com]
<?php 
//如果b.php被其他目录里的a.php文件require 或者 include 去引用的话 
require_once("./c.php"); //实际上调用的是a.php目录下的c.php 
require_once(dirname(__FILE__)."/c.php"); //实际上调用的是b.php目录下的c.php 
require_once("c.php"); //实际上调用的是b.php目录下的c.php 
?>

案例三:

运行php网站,出错,内容如下:

Warning: Unknown: failed to open stream: No such file or directory in Unknown on line 0

Fatal error: Unknown: Failed opening required 'E:/php/www/mrsoft/注册登录模块/index.php' (include_path='.;C:\php5\pear') in Unknown on line 0

文件结构:

解决方法:

apache不能解析上图中“注册登录模块”的中文URL,把它换成英文路径即可。

转载于:https://www.cnblogs.com/zhanghao1314/p/4949154.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值