Stavo distribuendo un'applicazione Web su architettura PPC64LE con CentOS 7. Poiché la macchina non è stata configurata con pacchetti di hosting Web, è necessario configurarla prima di distribuire l'applicazione. Sfortunatamente, il yum
repository consisteva in pacchetti piuttosto vecchi per questa architettura e l'installazione dell'ultimo pacchetto tramite RPM è un incubo poiché i pacchetti avrebbero un sacco di dipendenze. Quindi ho deciso di compilare PHP e i suoi moduli dipendenti dal sorgente. Ora l'ambiente di web hosting è pronto e tutto ciò che devo fare è installare alcuni pacchetti dipendenti affinché l'applicazione funzioni. Discuterò come installare pacchetti phpseclib come Net_SSH2 e Net_SFTP su architettura PPC64LE con CentOS 7.
Avevo usato il pacchetto chiamato Net_SSH2 e Net_SFTP da phpseclib nella mia applicazione e ha funzionato bene nel mio ambiente di sviluppo. Installare i pacchetti phpseclib sull'architettura x86 è stato semplicissimo (perché yum fa tutto). Dal momento che non c'erano gli ultimi binari per PPC64LE, ho usato PEAR. PEAR è l'abbreviazione di "PHP Extension and Application Repository". È un repository di codici PHP riutilizzabili.
Ecco come ho installato i pacchetti PHP Net_SSH2 e Net_SFTP utilizzando PEAR.
Come installare i pacchetti phpseclib NET_SSH2 e Net_SFTP
Passaggio 1:assicurati che Pear Package Manager sia installato
Se hai installato PHP dal sorgente, avresti installato il gestore di pacchetti PEAR a meno che non sia stato utilizzato
Se dovessi installare PHP usando il repository yum, installa PHP-pear da una versione corrispondente del tuo PHP
#yum install php-pear
#pear version PEAR Version: 1.10.11 PHP Version: 7.2.30 Zend Engine Version: 3.2.0 Running on: Linux terra-node-01 4.18.0-80.7.2.el7.ppc64le #1 SMP Thu Sep 12 15:45:05 UTC 2019 ppc64le
Fase 2:registra un canale da utilizzare con il programma di installazione PEAR.
#pear channel-discover phpseclib.sourceforge.net Channel "phpseclib.sourceforge.net" is already initialized
Fase 3:elenca i pacchetti disponibili
#pear remote-list -c phpseclib Channel phpseclib Available packages: ===================================== Package Version Crypt_AES 1.0.18 Crypt_Base 1.0.18 Crypt_Blowfish 1.0.18 Crypt_DES 1.0.18 Crypt_Hash 1.0.18 Crypt_RC4 1.0.18 Crypt_RSA 1.0.18 Crypt_Random 1.0.18 Crypt_Rijndael 1.0.18 Crypt_TripleDES 1.0.18 Crypt_Twofish 1.0.18 File_ANSI 1.0.18 File_ASN1 1.0.18 File_X509 1.0.18 Math_BigInteger 1.0.18 Net_SCP 1.0.18 Net_SFTP 1.0.18 Net_SSH1 1.0.18 Net_SSH2 1.0.18 System_SSH_Agent 1.0.18
Come puoi vedere sono disponibili i pacchetti Net_SFTP e Net_SSH2.
Fase 4:installa Net_SFTP e Net_SSH2
Installerà l'ultima versione disponibile.
#pear install phpseclib/Net_SFTP phpseclib/Net_SFTP is already installed and is the same as the released version 1.0.18
#pear install phpseclib/Net_SSH2 phpseclib/Net_SSH2 is already installed and is the same as the released version 1.0.18
Una volta installati i pacchetti, riavviare httpd
servizio
Passaggio finale:riavvia il servizio HTTPD
#systemctl restart httpd