Formas de pagamento Abuse

Instruções de instalação do módulo WHMCS

26.09.2024, 12:51

WHMCS (Web Host Manager Complete Solution) é um sistema de automatização para empresas de alojamento e ISPs. Oferece funcionalidades para gestão de clientes, faturação, suporte e automatização de processos. Aqui estão as instruções de como instalar este módulo.

PASSO 1: Carregamento do módulo

Faça o upload do módulo para o servidor através da linha de comando usando scp:

scp /path/to/local/module-whmcs-billmanager.zip
username@remote_server:/path/to/remote/directory

Exemplo se já estiver na pasta com o ficheiro:

scp module-whmcs-billmanager.ziproot@77.92.122.212:/var/www/www-root/data/www/data-hub.online/

Ser-lhe-á então pedido que introduza a sua palavra-passe do servidor.

Depois de carregar o ficheiro para o servidor, ligue-se ao servidor através de SSH e descomprima o ficheiro

ssh user@remote_server

Terá de introduzir a palavra-passe do servidor.

Em seguida, vá para a pasta do seu projeto e para onde carregou o ficheiro.

cd /var/www/path/to/destination/ 

O arquivo deve ser descompactado na raiz do projeto

unzip module-whmcs-billmanager.zip

Neste arquivo existem 3 versões do módulo correspondentes à versão do php em que o whmcs funciona, para descobrir a sua versão do php vá a Utilities/System/PHP info.

Depois é necessário descomprimir o arquivo novamente para a versão que o seu whmcs suporta.

Para php 7.1, php 7.2, php 7.4 introduza

unzip version7.1|7.2|7.4.zip

Para o php 8.1, introduza

unzip version8.1

Para o php 8.2, introduza

unzip version8.2

Em seguida, deve (necessariamente) conceder permissões aos ficheiros. Pode fazê-lo a partir da pasta do projeto, introduzindo o comando
chmod -R 755 modules/servers/PQH

O módulo é carregado.

Ou Carregue o módulo para o servidor através do FileZilla

No seu computador, descompacte o ficheiro module-whmcs-billmanager.zip

Em seguida, é necessário descompactar novamente o arquivo da versão que o seu whmcs suporta:

Для версии php 7.1, php 7.2, php 7.4 архив version7.1|7.2|7.4.zip
Для версии php 8.1 архив version8.1
Для версии php 8.2 архив version8.2

Em seguida, ligue-se ao seu servidor utilizando o filezilla.

Transfira os ficheiros para a pasta raiz do sítio a partir do arquivo correspondente à sua versão do php (como na imagem abaixo).

Em seguida, é necessário (obrigatório) dar direitos à pasta e aos ficheiros, o que pode ser feito indo à pasta modules/servers e clicando com o botão direito do rato na pasta PQH e selecionando atributos de ficheiro na janela de pop-up, escrevendo no campo o valor numérico 755 e assinalando a caixa de verificação recurse em subdirectórios (como na imagem abaixo).

O módulo é carregado.

PASSO 2: Verificar o IonCube

No nosso alojamento partilhado, o suporte do IonCube e a sua versão dependem da versão PHP selecionada para o utilizador. Isto é válido para qualquer linha de planos de alojamento, bem como para os servidores virtuais/dedicados com o painel ISPManager instalado.

Atenção: se tiver o painel ISPManager4 instalado no seu servidor - já tem o IonCube instalado para todas as versões suportadas. Não siga esta instrução em nenhum caso, pois pode levar à completa inoperacionalidade do servidor. Se for necessário atualizar a versão do IonCube, contacte o serviço de apoio.

Requisitos preliminares para a instalação do IonCube

Se tiver um servidor sem painel de controlo, poderá ter de proceder à instalação manual do IonCube.

O processo de instalação pode variar consoante o seu sistema operativo. Independentemente do sistema operativo, o primeiro passo é sempre ligar-se via SSH e obter acesso root.

Para instalar o IonCube precisa de uma máquina com um servidor web ativo e funcional, Apache ou Nginx, bem como uma versão instalada de PHP da lista de suportados pelo IonCube Loader.

Atenção: O IonCube Loader tem uma particularidade: muitas vezes não suporta versões "zero" do PHP, por exemplo, PHP 8.0. No entanto, ele suporta PHP 8.1 ou PHP 8.2.

Instalação passo a passo do IonCube

Importante: o valor dos comandos utilizados para instalar o IonCube Loader varia em função de algumas variáveis: a versão do PHP no servidor, a localização do diretório PHP e a versão da arquitetura do servidor. Aqui e no futuro, destacaremos os valores dessas variáveis. Em vez deles, terá de substituir os valores adequados ao seu servidor durante a instalação.

1. Ligue-se ao servidor através de SSH.

2. Verifique a arquitetura do servidor atual:

uname -m
Exit
x86_64

Como podemos ver em x86_64, o nosso servidor atual está a funcionar numa arquitetura de 64 bits. Valores do tipo i686 indicariam o oposto - uma arquitetura de 32 bits.

Em seguida, vá para o diretório tmp e descarregue o arquivo necessário:

Para sistemas de 64 bits:

cd /tmp
wget https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz

Para sistemas de 32 bits:

cd /tmp
wget https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86.tar.gz

Depois de descarregar o arquivo, deve descompactá-lo:

Uma vez que temos uma arquitetura de 64 bits no exemplo, descarregámos e descomprimimos exatamente esse arquivo.

tar -zxvf ioncube_loaders_lin_x86-64.tar.gz

5. Aceda ao diretório ioncube e consulte a lista de ficheiros.

cd ioncube/
ls -l

Conclusão

total 39260
-rw-rw-r-- 1 507 507  472192 Sep  9  2023 ioncube_loader_lin_4.1.so
-rw-rw-r-- 1 507 507  471968 Sep  9  2023 ioncube_loader_lin_4.2.so
-rw-rw-r-- 1 507 507  472768 Sep  9  2023 ioncube_loader_lin_4.3.so
-rw-rw-r-- 1 507 507  490752 Sep  9  2023 ioncube_loader_lin_4.3_ts.so
-rw-rw-r-- 1 507 507  475840 Sep  9  2023 ioncube_loader_lin_4.4.so
-rw-rw-r-- 1 507 507  494880 Sep  9  2023 ioncube_loader_lin_4.4_ts.so
-rw-rw-r-- 1 507 507  483360 Sep  9  2023 ioncube_loader_lin_5.0.so
-rw-rw-r-- 1 507 507  497632 Sep  9  2023 ioncube_loader_lin_5.0_ts.so
-rw-rw-r-- 1 507 507 1116768 Sep  9  2023 ioncube_loader_lin_5.1.so
-rw-rw-r-- 1 507 507 1155744 Sep  9  2023 ioncube_loader_lin_5.1_ts.so
-rw-rw-r-- 1 507 507 1139936 Sep  9  2023 ioncube_loader_lin_5.2.so
-rw-rw-r-- 1 507 507 1176704 Sep  9  2023 ioncube_loader_lin_5.2_ts.so
-rw-rw-r-- 1 507 507 1222328 Sep  9  2023 ioncube_loader_lin_5.3.so
-rw-rw-r-- 1 507 507 1275512 Sep  9  2023 ioncube_loader_lin_5.3_ts.so
-rw-rw-r-- 1 507 507 1512960 Sep  9  2023 ioncube_loader_lin_5.4.so
-rw-rw-r-- 1 507 507 1599584 Sep  9  2023 ioncube_loader_lin_5.4_ts.so
-rw-rw-r-- 1 507 507 1520056 Sep  9  2023 ioncube_loader_lin_5.5.so
-rw-rw-r-- 1 507 507 1602040 Sep  9  2023 ioncube_loader_lin_5.5_ts.so
-rw-rw-r-- 1 507 507 1485192 Sep  9  2023 ioncube_loader_lin_5.6.so
-rw-rw-r-- 1 507 507 1549640 Sep  9  2023 ioncube_loader_lin_5.6_ts.so
-rw-rw-r-- 1 507 507 1254608 Sep  9  2023 ioncube_loader_lin_7.0.so
-rw-rw-r-- 1 507 507 1316080 Sep  9  2023 ioncube_loader_lin_7.0_ts.so
-rw-rw-r-- 1 507 507 1355080 Sep  9  2023 ioncube_loader_lin_7.1.so
-rw-rw-r-- 1 507 507 1438760 Sep  9  2023 ioncube_loader_lin_7.1_ts.so
-rw-rw-r-- 1 507 507 1407568 Sep  9  2023 ioncube_loader_lin_7.2.so
-rw-rw-r-- 1 507 507 1489008 Sep  9  2023 ioncube_loader_lin_7.2_ts.so
-rw-rw-r-- 1 507 507 1316800 Sep  9  2023 ioncube_loader_lin_7.3.so
-rw-rw-r-- 1 507 507 1386880 Sep  9  2023 ioncube_loader_lin_7.3_ts.so
-rw-rw-r-- 1 507 507 1363392 Sep  9  2023 ioncube_loader_lin_7.4.so
-rw-rw-r-- 1 507 507 1430848 Sep  9  2023 ioncube_loader_lin_7.4_ts.so
-rw-rw-r-- 1 507 507 1401736 Sep  9  2023 ioncube_loader_lin_8.1.so
-rw-rw-r-- 1 507 507 1506216 Sep  9  2023 ioncube_loader_lin_8.1_ts.so
-rw-rw-r-- 1 507 507 1439016 Sep  9  2023 ioncube_loader_lin_8.2.so
-rw-rw-r-- 1 507 507 1546568 Sep  9  2023 ioncube_loader_lin_8.2_ts.so
-rw-r--r-- 1 507 507   10768 Aug  5  2022 LICENSE.txt
-rw-r--r-- 1 507 507  181104 Aug 15  2022 loader-wizard.php
-rw-r--r-- 1 507 507    4070 Sep  9  2023 README.txt
-rw-r--r-- 1 507 507   39548 Sep  9  2023 USER-GUIDE.pdf
-rw-r--r-- 1 507 507   11269 Sep  9  2023 USER-GUIDE.txt

Como pode ver, o arquivo contém muitas versões diferentes do módulo para diferentes versões de PHP. Temos de descobrir qual destes ficheiros é necessário para continuar a instalação.

6. Conhecendo a sua versão do PHP (do primeiro passo), o próximo passo é determinar a localização do diretório onde precisa de instalar o IonCube Loader.

php -i | grep extension_dir

Saída

extension_dir => /usr/lib/php/20210902 => /usr/lib/php/20210902

A localização /usr/lib/php/20210902 será necessária no processo de instalação. No sistema operativo Centos, esta pasta pode parecer-se com /usr/lib64/php/modules.

7. Copie os ficheiros do IonCube para o diretório necessário.

sudo cp /tmp/ioncube/ioncube_loader_lin_8.1.so /usr/lib/php/20210902

8. Agora é necessário editar os ficheiros de configuração php.ini. Eles podem ter localizações diferentes em diferentes configurações de servidor:

sudo nano /etc/php/8.1/cli/php.ini          #для PHP CLI 
sudo nano /etc/php/8.1/fpm/php.ini          #для PHP-FPM & Nginx
sudo nano /etc/php/8.1/apache2/php.ini      #для Apache2

Inserir uma linha do género da seguinte no início do php.ini:

zend_extension = /usr/lib/php/20210902/ioncube_loader_lin_8.1.so

9. Reiniciar o servidor web:

Apache Ubuntu/Debian
sudo systemctl restart apache2
Apache Centos/Rocky/Alma
sudo systemctl restart httpd
Nginx/PHP-FPM
sudo systemctl restart nginx
sudo systemctl restart php-fpm

10. Verificar se a instalação está correta com o comando:

php -v

Se a instalação for bem sucedida, a linha com informações sobre a versão atual do IonCube será apresentada da seguinte forma:

Saída

PHP 8.1.2-1ubuntu2.17 (cli) (built: May  1 2024 10:10:07) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.1.2, Copyright (c) Zend Technologies
    with the ionCube PHP Loader v13.0.2, Copyright (c) 2002-2023, by ionCube Ltd.
    with Zend OPcache v8.1.2-1ubuntu2.17, Copyright (c), by Zend Technologies

PASSO 3 - Adicionar servidor

Aceda ao painel de administração.

System Settings/Servers

Clique em Add New Server.

Preencha o formulário como na imagem abaixo.

No campo Module (Módulo) encontre: PQH

No campo Nome do anfitrião ou Endereço IP, introduza: client.the.hosting

Em seguida, introduza os detalhes da sua conta (login, palavra-passe) de client.the.hosting.

E clique em continuar.

Depois, na página seguinte, tem de introduzir o nome do servidor (à sua escolha) e clicar em Guardar Alterações

PASSO 4: Administrador do módulo

Precisamos de criar um novo administrador.

Isto pode ser feito indo a settings/manage admins

Depois clique em Add New Administrator

Função: Full administrator

Nome de utilizador (obrigatório!): apisystem

Os restantes dados são da sua responsabilidade

Exemplo (imagem de ecrã abaixo)

PASSO 5. Campos adicionais

Campos como a escolha do sistema operativo na compra podem ser configurados indo a definições/configurações do sistema/opções configuráveis

Clique no botão Criar um novo grupo e defina o nome do grupo como desejar.

Clique em Guardar alterações e, em seguida, no botão Adicionar nova opção configurável.

Em seguida, na janela pop-up, introduza no campo Option Name (Nome da opção): "VM Template" (Modelo de VM).

Em seguida, adicione o valor no campo Add Options (Adicionar opções).

Aqui está uma lista de todos os valores suportados:

VM6_ISPsystem_Alma-Linux-8
VM6_ISPsystem_Alma-Linux-9
VM6_ISPsystem_Astra-Linux-CE
VM6_ISPsystem_CentOS-8-Stream
VM6_ISPsystem_CentOS-9-Stream
VM6_ISPsystem_Debian-10
VM6_ISPsystem_Debian-11
VM6_ISPsystem_Debian-12
VM6_ISPsystem_FreeBSD-12
VM6_ISPsystem_FreeBSD-13
VM6_ISPsystem_Oracle-Linux-8
VM6_ISPsystem_Rocky-Linux-8
VM6_ISPsystem_Ubuntu-18.04
VM6_ISPsystem_Ubuntu-20.04
VM6_ISPsystem_Ubuntu-22.04
VM6_ISPsystem_VzLinux-8

Clique em Save Changes tanto nesta aba quanto na aba Configurable Option Groups.

PASSO 6. Adicionando Produtos

Aceda a Definições/ Definições do sistema/ Produtos, Serviços

Crie um novo grupo clicando em Create a New Group.

Em seguida, preencha os campos como achar melhor

Guarde e vá novamente para Definições/ Definições do sistema/ Produtos, Serviços.

  1. Clique em Criar um novo produto
  2. Em seguida (certifique-se de que) seleciona
  3. Tipo de produto: Servidor/VPS
  4. Módulo: PQH

Preencha os restantes campos como achar melhor

Depois de guardar, pode personalizar este produto

No separador Details (Detalhes) (captura de ecrã abaixo), pode personalizar o produto como desejar (Product Name, Product Tagline, Product Short Description, Product Description).

A caixa de verificação no valor Exigir domínio deve estar desmarcada.

Não se esqueça de guardar as definições do produto

No separador Preços (captura de ecrã abaixo), pode configurar o pagamento do produto. Não se esqueça de guardar as definições do produto

No separador Module Settings (Definições do módulo) (captura de ecrã abaixo)

Selecione (obrigatório) Module Name: PQH

Em seguida, selecione o centro de dados e a tarifa que corresponderão a este produto.

Não se esqueça de guardar as definições do produto

No separador Custom Fields (Campos personalizados) (captura de ecrã abaixo), DEVE inserir o valor "VMid" no campo Field Name (Nome do campo)

Personalize os restantes separadores como achar melhor.

Além disso, para simplificar o processo de adição de produtos, podemos duplicá-los (captura de ecrã abaixo).

PASSO 7. Teste

Crie um utilizador, carregue a sua conta e tente encomendar um serviço a partir da conta de teste. Ao fazer o pedido pelo usuário, o módulo passará todos os parâmetros para o BILLmanager, fará o pedido do servidor automaticamente e quando o servidor for ativado no lado do BILLmanager, o serviço também será ativado no lado do WHMCS.