gpt4 book ai didi

php - 如何在没有 root 访问权限的 Linux 上的非标准文件夹中安装 PHP SSH2 扩展

转载 作者:太空宇宙 更新时间:2023-11-04 04:00:00 25 4
gpt4 key购买 nike

我已经超出了我的专业领域,并且在互联网和 stackoverflow 上搜索了这个问题的解决方案,但没有找到。我正在尝试在我没有 root 访问权限的 Linux(不知道哪种风格)共享托管服务器上的帐户文件夹中安装 PHP SSH2 扩展。

我能够使用以下命令在私有(private)文件夹中成功创建 libssh2-1.4.3:

./configure --prefix=/home/myaccnt/php/ssh2/install
make
make install

最终在 /home/myaccnt/php/ssh2/install/lib 文件夹中得到以下文件:

libssh2.a
libssh2.la
libssh2.so
libssh2.so.1
libssh2.so.1.0.1

到目前为止,一切都很好(至少我认为很好)。

接下来,我尝试构建 ssh2-0.11.3,但无法通过配置步骤。我尝试了几种不同的方法来运行配置命令:

./configure --prefix=/home/myaccnt/php/ssh2/install --with-ssh2=/home/myaccnt/php/ssh2/install
./configure --prefix=/home/myaccnt/php/ssh2/install --with-ssh2=/home/myaccnt/php/ssh2/install/lib

但是配置脚本总是找不到 libssh2,我收到以下消息:

checking for ssh2 support... yes, shared
checking for ssh2 files in default path... not found
configure: error: The required libssh2 library was not found. You can obtain that package from http://sourceforge.net/projects/libssh2/

所以,问题是,如何让 PHP SSH2 扩展配置脚本找到 libssh2?

预先感谢您的帮助。真的很感激。

最佳答案

经过几个小时的研究配置脚本以及更多时间的互联网搜索后,我找到了一种方法来完成此任务。对于那些可能有兴趣做类似事情的人,这就是我所做的。

我从 www.php.net/manual/en/ssh2.installation.php 的说明开始并执行了以下操作:

创建libssh2:

  1. 在我的主目录下创建一个名为“php”的文件夹,然后在其中创建一个名为“ext”的文件夹和另一个名为“ssh2”的文件夹。
  2. cd /<myhome>/php/ssh2
  3. libssh2.org 下载 libssh2 软件包进入 php/ssh2 文件夹
  4. tar vxzf libssh2-1.4.3.tar.gz
  5. cd libssh2-1.4.3
  6. ./configure --prefix=$HOME
  7. make
  8. make install

创建 ssh2:

  1. cd /<myhome>/php/ssh2
  2. pecl.php.net/package/ssh2下载php-ssh2包
  3. tar vxzf ssh2-0.11.3
  4. cd ssh2-0.11.3
  5. phpize
  6. ./configure --prefix=$HOME --with-ssh2=$HOME
  7. make

已复制 /<myhome>/ssh2-0.11.3/modules/ssh2.so/<myhome>/php/ext/ssh2.so

修改了我的 php.ini 以包含 extension=/<myhome>/php/ext/ssh2.so

现在我在共享服务器上的脚本可以使用 ssh2。希望有人觉得这有帮助。

关于php - 如何在没有 root 访问权限的 Linux 上的非标准文件夹中安装 PHP SSH2 扩展,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23303968/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com