Heim  >  Artikel  >  Backend-Entwicklung  >  linux执行php, 用IE可以执行,但是用命令就不能,请教

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

WBOY
WBOYOriginal
2016-06-23 14:05:29794Durchsuche

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 代码问题
但是你们并没有一个询问过楼主程序内容是什么
就想当然的,头痛医头脚痛医脚了

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn