>  기사  >  백엔드 개발  >  linux执行php, 用IE可以执行,但是用命令就不能,请教

linux执行php, 用IE可以执行,但是用命令就不能,请教

WBOY
WBOY원래의
2016-06-23 14:05:29808검색

root用户执行命令为  /usr/local/php/bin/php  -f /usr/local/apache2/htdocs/test.php
test.php权限为:-rwxr-xr-x.  1 root root    22 4月  10 15:04 test.php

执行结果为:PHP Fatal error:  Unknown: Failed opening required '/usr/local/apache2/htdocs/test.php' (include_path='.:/usr/local/php/lib/php') in Unknown on line 0

Fatal error: Unknown: Failed opening required '/usr/local/apache2/htdocs/test.php' (include_path='.:/usr/local/php/lib/php') in Unknown on line 0


虚心请教,本人第一次在linux上运行php, 一天了,都没搞好。


回复讨论(解决方案)

看下文件目录位置是否正确

运行路径?
php命令行运行时,初始路径是运行所在路径而不是php文件所在路径,所有里面的相对路径都根据这个初始路径计算得到

说的很明确了,没有这个文件/usr/local/apache2/htdocs/test.php。
Fatal error: Unknown: Failed opening required '/usr/local/apache2/htdocs/test.php' (include_path='.:/usr/local/php/lib/php') in Unknown on line 0

应该是相对路径导致的,请换成绝对路径

说的很明确了,没有这个文件/usr/local/apache2/htdocs/test.php。
Fatal error: Unknown: Failed opening required '/usr/local/apache2/htdocs/test.php' (include_path='.:/usr/local/php/lib/php') in Unknown o……

你好,好像不是相对路径导致的,假设我执行一个没有的文件,比如:
[root@localhost htdocs]# /usr/local/php/bin/php  -f /usr/local/apache2/htdocs/test322323.php
Could not open input file: /usr/local/apache2/htdocs/test322323.php
提示的是Could not open input file。 这样就说明文件是找到了的。

运行路径?
php命令行运行时,初始路径是运行所在路径而不是php文件所在路径,所有里面的相对路径都根据这个初始路径计算得到

你好,不太懂,能具体解释一下吗。谢谢

[root@localhost htdocs]# /usr/local/php/bin/ php4  -f /usr/local/apache2/htdocs/test.php
-bash: /usr/local/php/bin/php4: 没有那个文件或目录

同样的,我把php改为php4,提示“ 没有那个文件或目录”,说明php也是可以找到的

linux 不懂,windows命令行是这样的

假设aaa.php里面有一句include ../bbb.php
c:\abc>php d:\xxx\aaa.php
这时,程序是会寻找c:\bbb.php,并且报错找不到,因为bbb.php是存在于 d:\ 这个目录的

要善用 __DIR__ 和 __FILE__

关权限什么事?你出错都是include的,肯定是路径问题

已解决。 原因和下面的网页上的原因一致。
http://www.cnblogs.com/zcy_soft/archive/2012/12/27/2835757.html

解决就好
真复杂的问题,还好我不学无术,不研究这个……pass
等真的遇上,再郁闷地google两三天好了

已解决。 原因和下面的网页上的原因一致。
http://www.cnblogs.com/zcy_soft/archive/2012/12/27/2835757.html
这个原因啊,其实想说楼主还是没把问题细节说全,你的问题和我们猜测的不是一回事,导致不好找到原因。

呵呵,原来是 php 代码问题
但是你们并没有一个询问过楼主程序内容是什么
就想当然的,头痛医头脚痛医脚了

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.