2012-03-20 4 views
0

PHP CLI нечаянно перестает работать на сервере. При запуске любого php-файла даже php -v для получения версии PHP я получаю следующую ошибку.php cli on linux не работает

Благодаря

# php -v 
Unknown option: v 
php [-f from_encoding] [-t to_encoding] [-s string] [files...] 
php -l 
php -r encoding_alias 
    -l,--list 
    lists all available encodings 
    -r,--resolve encoding_alias 
    resolve encoding to its (Encode) canonical name 
    -f,--from from_encoding 
    when omitted, the current locale will be used 
    -t,--to to_encoding 
    when omitted, the current locale will be used 
    -s,--string string 
    "string" will be the input instead of STDIN or files 
The following are mainly of interest to Encode hackers: 
    -D,--debug   show debug information 
    -C N | -c | -p  check the validity of the input 
    -S,--scheme scheme use the scheme for conversion 
+1

Проверьте свой путь поиска для чего-либо, называющего себя php, а не –

ответ

0

Тип which php на вашей оболочке, чтобы узнать, какие php исполняемые ваши медиаторы оболочки из поиска PATH.

Используйте ls -l $(which php), чтобы узнать, является ли он символической ссылкой на другой исполняемый файл.

То, что вы видите при запуске php -v, фактически является результатом команды piconv.

Скорее всего, есть символическая ссылка с именем php, указывающая на piconv где-то в вашем поиске PATH.

Тип echo $PATH для просмотра списка каталогов, в которых ваша оболочка выполняет поиск исполняемого файла php.

EDIT: Изменено: whereis - which в команде выше.

+0

Пробовал делать то, что php. Я получаю следующее [] #, который PHP /USR/BIN/PHP [] # LS -l $ (который PHP) -rwxr-хт-х 1 корень корень 5843 Sep 3 2010/USR/BIN/PHP [] # echo $ PATH /usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin Кажется, что нет символической ссылки и ее указание на правую php cli. : confused – user1280545

+0

@ user1280545: какой выход '/ usr/bin/php -v'? если его то же самое, возможно, кто-то (вы?) перезаписал двоичный файл 'php' с содержимым' piconv'. Если вы отредактируете этот файл, вы увидите некоторый код perl. – Kaii

+0

Да, я так думаю. Я просто сделал/usr/bin/php -v и получил тот же результат, что и nano/use/bin/php, и нашел ipconv perl-код внутри файла. Как я могу исправить это сейчас и поместить php cli на место. Я понятия не имею, как это произошло .... Кстати, по-настоящему оцените вашу помощь до сих пор – user1280545

Смежные вопросы