Hướng dẫn php command not found plesk - lệnh php không tìm thấy plesk

Hướng dẫn php command not found plesk - lệnh php không tìm thấy plesk

  • #4

Trên hệ thống của bạn có thể không có PHP được phân phối với hệ điều hành. Thay vào đó, bạn có thể sử dụng tốt như nhau một PHP được phân phối với plesk, vor ví dụ ... /7.3/bin/php /opt/plesk/php/7.4/bin/php
...
/opt/plesk/php/7.1/bin/php
/opt/plesk/php/7.2/bin/php
/opt/plesk/php/7.3/bin/php
/opt/plesk/php/7.4/bin/php

Hướng dẫn php command not found plesk - lệnh php không tìm thấy plesk

  • #6

/opt/plesk/php/7.4/lib64/php/modules/mysqli.so được cài đặt với PHP khi bạn sử dụng trình cài đặt Plesk. Tôi không thể nghĩ về một tình huống mà điều này có thể bị thiếu.

Nếu có thể trên hệ thống của bạn mà không ảnh hưởng đến các trang web khác, tôi đề nghị gỡ cài đặt phiên bản PHP được đề cập với trình cài đặt Plesk và sau đó cài đặt lại từ đó.

Nếu bạn đã thêm quyền truy cập SSH vào người dùng plesk của mình bằng cách sử dụng hướng dẫn sau:

Và sau đó, đã cố gắng chạy lệnh PHP như sau:

[[email protected] ~]$ php -v
-bash: php: command not found

Bạn có thể đã gặp phải lỗi trên. Điều này là do PLESK không lưu trữ nhị phân PHP trong các vị trí biến đường dẫn của bạn. Bạn có thể kiểm tra các biến đường dẫn hiện tại của mình tại đây:

[[email protected] ~]$ echo $PATH
/usr/share/Modules/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin

PLESK lưu trữ các nhị phân PHP cho các phiên bản khác nhau ở đây:

/opt/plesk/php/

Vì vậy, ví dụ nếu bạn đang cố gắng sử dụng nhị phân Php 7.4, điều này sẽ giống như sau:

[[email protected] php]$ /opt/plesk/php/7.4/bin/php -v
PHP 7.4.10 (cli) (built: Sep  4 2020 03:49:35) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
    with the ionCube PHP Loader + ionCube24 v10.4.2, Copyright (c) 2002-2020, by ionCube Ltd.
    with Zend OPcache v7.4.10, Copyright (c), by Zend Technologies

Vì vậy, để chỉ sử dụng PHP -V, bạn cần thêm đường dẫn bin này vào biến đường dẫn của bạn. Bạn có thể làm điều đó bằng cách chạy lệnh sau:

PATH=$PATH:/opt/plesk/php/7.4/bin/

Bây giờ, bạn có thể chạy như sau và nó sẽ hoạt động:

[[email protected] php]$ php -v
PHP 7.4.10 (cli) (built: Sep  4 2020 03:49:35) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
    with the ionCube PHP Loader + ionCube24 v10.4.2, Copyright (c) 2002-2020, by ionCube Ltd.
    with Zend OPcache v7.4.10, Copyright (c), by Zend Technologies

Bây giờ, chúng ta cần nhớ, điều này sẽ chỉ duy trì cho phiên hiện tại, nếu chúng ta đăng xuất và đăng nhập lại, điều này sẽ bị mất. Để giữ cho điều này vĩnh viễn trên mỗi đăng nhập, chúng ta cần đặt điều này vào tệp .profile. Bạn có thể làm điều này bằng cách chạy như sau:

echo "PATH=$PATH:/opt/plesk/php/7.4/bin/" >> .profile

Sau khi hoàn thành, bây giờ bạn có thể cố gắng đăng nhập lại và xem PHP -V vẫn đang hoạt động:

[[email protected] ~]$ exit
logout
[[email protected] ~]# su - elastic-keldysh
Last login: Thu Oct  1 13:42:13 IST 2020 on pts/0
[[email protected] ~]$ php -v
PHP 7.4.10 (cli) (built: Sep  4 2020 03:49:35) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
    with the ionCube PHP Loader + ionCube24 v10.4.2, Copyright (c) 2002-2020, by ionCube Ltd.
    with Zend OPcache v7.4.10, Copyright (c), by Zend Technologies
[[email protected] ~]$

Tôi là một người ăn xin thực sự trong linux/server/plesk. Tôi đã phải thuê một Ubunthu máy chủ ảo để tạo môi trường thử nghiệm.

Công ty (máy chủ) đã cài đặt tự động phần mềm PLESK để giúp tôi. Tôi muốn sử dụng người dùng ngoại trừ root qua SSH để chạy một số dòng lệnh có khóa php hoặc

[[email protected] ~]$ echo $PATH
/usr/share/Modules/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin
0.

Hoạt động với người dùng root nhưng khi tôi kết nối bởi người dùng hệ thống plesk của mình qua SSH, mọi lệnh đã được tìm thấy:

bash: npm: không tìm thấy lệnh

Bash: PHP: Không tìm thấy lệnh

etc...

Người dùng này là người dùng hệ thống theo Plesk.

Bên trong bảng điều khiển Plesk, nó viết bài này:

Tại đây, bạn có thể chỉ định người dùng hệ điều hành để quản lý các tệp và thư mục trong WebSpace của FTP hoặc với trình quản lý tệp. Người dùng hệ thống cũng được sử dụng để truy cập Plesk qua SSH (trên Linux) hoặc RDP (trên Windows) nếu các quyền tương ứng được cấp.

Nếu tôi có thể truy cập Plesk qua SSH, điều đó có nghĩa là tôi có thể chạy dòng lệnh hoặc chỉ sử dụng FTP và trình quản lý tệp?

Làm thế nào tôi có thể nhận được giống như người dùng root tất cả các dòng lệnh cho người dùng plesk?

Mục tiêu của tôi là có được người dùng chỉ có thể chạy các dòng lệnh bên trong phạm vi PLESK (thư mục

[[email protected] ~]$ echo $PATH
/usr/share/Modules/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin
3) và thực hiện một số hành động trong bảng điều khiển PLESK, đặc biệt trong trình quản lý tệp.

Tôi đã làm theo hướng dẫn này cho php nhưng lệnh php không được bao gồm cho người dùng hệ thống của tôi.