2011-12-23 98 views
0

我正在尝试Facebook开发人员的教程。但是,我无法在我的代码中成功包含Facebook PHP SDK。如前所述,require_once("facebook_sdk/facebook.php");引发以下错误:require_once(“facebook-sdk/facebook.php”)会引发警告“未能打开流:权限被拒绝”

Warning: require_once(facebook_sdk/facebook.php) [function.require-once]: failed to 
open stream: Permission denied in /opt/lampp/htdocs/awesome/plas.php on line 2 

Fatal error: require_once() [function.require]: Failed opening required 'facebook_sdk/facebook.php' 
(include_path='.:/opt/lampp/lib/php') in /opt/lampp/htdocs/awesome/plas.php on line 2 

我下清醒山猫发展。我试图做chmod 777 facebook.php但问题仍然存在。我发现this SO question但解决方案到达(重命名文件,因为它可能与PHP自己的冲突)不适合我。 (想想看,一个名为facebook.php的文件如何与内部PHP文件冲突?!)即使我切换到普通的require,也会引发相同的警告。

奇怪的是,如果我的文件(facebook.phpbase_facebook.php)复制的facebook_sdk外,并相应地改变require_once路线,需要成功。有什么想法吗?

+1

chmod目录以及文件的放置。看起来您没有足够的权限来触摸该目录中的文件。 – hakre 2011-12-23 19:31:43

+0

'/ opt/lampp/lib/php'中有什么?是否有'/ opt/lampp/lib/php/facebook_sdk/facebook.php'文件? – ceejayoz 2011-12-23 19:31:50

+0

你钉住它了。如果你将这个答案转化为答案,我很乐意接受。谢谢! ( - ,) – skytreader 2011-12-23 19:34:20

回答

0

您的网络服务器需要读取权限为facebook_sdk/facebook.php。您可以通过chown将目录链接到Web服务器用户。 chmod 777不是一个好的做法。

还要确保每个包含路径,facebook_sdk/facebook.php存在。

+0

感谢您的额外“最佳做法”提示!实际上,当我懒得指定权限位并且我只想访问时,我只会执行'chmod 777'。它只发生在本地主机上,从不在实际的服务器上。 – skytreader 2011-12-24 19:40:33

相关问题