Adianti Fórum - Preparando um servidor gabarito para o Adianti Framework (16.04)
Preparando um servidor gabarito para o Adianti Framework (16.04) Para trabalharmos bem com uma ferramenta de desenvolvimento é fundamental a preparação do ambiente, e com o Adianti Framework não é diferente. Durante muitos anos, recebemos posts com dúvidas que não diziam respeito ao Framework, mas de detalhes no ambiente que não estavam corretamente configurados. Requisitos como a versão do PHP, a habilitação de logs de erros, configurações de uso ...
Preparando um servidor gabarito para o Adianti Framework (16.04)
Pablo Dall'Oglio 13/01/2017 (há 5 anos)
Para trabalharmos bem com uma ferramenta de desenvolvimento é fundamental a preparação do ambiente, e com o Adianti Framework não é diferente. Durante muitos anos, recebemos posts com dúvidas que não diziam respeito ao Framework, mas de detalhes no ambiente que não estavam corretamente configurados. Requisitos como a versão do PHP, a habilitação de logs de erros, configurações de uso de memória, de sessão, dentre outros, muitas vezes não estavam adequados. Além disso, algumas revendas de hospedagem agem restringindo algumas funções do PHP, o que também atrapalha o desenvolvedor. Felizmente hoje podemos instanciar um servidor na nuvem e configurá-lo do nosso jeito. É isso que eu explico neste tutorial. Como criar um servidor gabarito. Vamos preparar um servidor Ubuntu 16.04 server com PHP7, e PostgreSQL 9.5, além de alguns controles de segurança, que serão explicados a seguir.
sudo apt-get update sudo apt-get install apache2 php7.0 libapache2-mod-php7.0 sudo apt-get install php7.0-soap php7.0-xml php7.0-curl php7.0-opcache php7.0-gd php7.0-sqlite3 php7.0-mcrypt php7.0-mbstring sudo apt-get install rpl zip unzip git vim curl
a2dismod mpm_event a2dismod mpm_worker a2enmod mpm_prefork a2enmod rewrite a2enmod php7.0
echo "" >> /etc/php/7.0/apache2/php.ini echo "error_log = /tmp/php_errors.log" >> /etc/php/7.0/apache2/php.ini echo "display_errors = On" >> /etc/php/7.0/apache2/php.ini echo "memory_limit = 256M" >> /etc/php/7.0/apache2/php.ini echo "max_execution_time = 120" >> /etc/php/7.0/apache2/php.ini echo "error_reporting = E_ALL" >> /etc/php/7.0/apache2/php.ini echo "file_uploads = On" >> /etc/php/7.0/apache2/php.ini echo "post_max_size = 100M" >> /etc/php/7.0/apache2/php.ini echo "upload_max_filesize = 100M" >> /etc/php/7.0/apache2/php.ini echo "session.gc_maxlifetime = 14000" >> /etc/php/7.0/apache2/php.ini
sudo apt-get install postgresql php7.0-pgsql php7.0-mysql
rm /etc/postgresql/9.5/main/pg_hba.conf echo 'local all all trust' >> /etc/postgresql/9.5/main/pg_hba.conf echo 'host all all 127.0.0.1/32 password' >> /etc/postgresql/9.5/main/pg_hba.conf echo 'host all all ::1/128 password' >> /etc/postgresql/9.5/main/pg_hba.conf echo 'host all all all password' >> /etc/postgresql/9.5/main/pg_hba.conf
echo "session.name = CUSTOMSESSID" >> /etc/php/7.0/apache2/php.ini echo "session.use_only_cookies = 1" >> /etc/php/7.0/apache2/php.ini echo "session.cookie_httponly = true" >> /etc/php/7.0/apache2/php.ini echo "session.use_trans_sid = 0" >> /etc/php/7.0/apache2/php.ini echo "session.entropy_file = /dev/urandom" >> /etc/php/7.0/apache2/php.ini echo "session.entropy_length = 32" >> /etc/php/7.0/apache2/php.ini
Neste ponto, você já terá um servidor Ubunt 16.04 rodando Apache, PHP7 e PostgreSQL 9.5, prontamente configurado. Agora vamos instalar o template de criação de aplicações do Adianti Framework, e criar as bases de dados para nosso primeiro projeto.
cd /var/www/html/ unzip /tmp/adianti-template-4.0.0.zip mv template projeto1 cd projeto1 rpl "template" "projeto1" app/config/application.ini
Jackson Meires 28/03/2017 (há 5 anos)
Parabéns Pablo,
excelente artigo, é bastante útil.
Gustavo Ferreira Araujo Silva 29/05/2017 (há 5 anos)
Muito bom. Rodando que é uma beleza... apenas estou com problema em mapear uma unidade... alguma dica?...
Geovani Oliveira 27/12/2017 (há 4 anos)
Eu tive que instalar um pacote adicional:
Só depois eu conseguir executar o comando:
Stones Junior 24/01/2018 (há 4 anos)
Olá, estou seguindo as orientações, surgiu uma dúvida:
Gostaria de acessar a URL www.meusistema.com e carregasse o www.meusistema.com/projeto1, essa informação eu inclui no próprio digital ocean na área de domínio ? Vocês tem alguma informação complementar ? Obrigado
Wagner Nunes da Silva 25/08/2018 (há 3 anos)
Uso o ubuntu 16.04, segui o guia todo, instalei o template 5.0.0, primeiro tentei no windows, eu tinha o xamp, ele abre, faz o login. Inclui uma tabela no postgres local e dá sempre o erro "cold not find driver" quando tento clicar na visualização de tabela, ai fiz como manda o site para usar o Wamp, ele conecta no sqllite, consigo fazer o login, mas só com apache 5.6, no apache 7 ele dá mesmo erro quando entro com admin, admin, e nao conecta no Postgres nem a reza brava dando a msg acima, então peguei o ubuntu meu 16.04 e segui este tutorial aqui, não consigo fazer login, fica o mesmo erro, segui tudo aqui, o postgres está configurado nessa maquina e acessivel tanto localmente quanto remotamente, fiz tudo esta configurado no apache, não sei mais o que fazer, considerava o uso da ferramenta mas tá dificil achar informação a respeito, nao sei mais onde procurar. Sou usuário médio avançado tanto em programação quanto em Linux, não tenho mais configuração a ser feita. Me dêm uma luz! abraços.
TBZ - Marcus Monti 19/03/2019 (há 3 anos)
Adianti Studio instalado no windows (7), não consigo acessar BD postgres de uma vm ubuntu - server logo não consigo gerar paginas utilizando as tabelas do banco.
O projeto esta na vm ubuntu-server.
Existe solução para este problema ?
obs : pelo pgadmin conexao normal, nao aparece mensagem o studio simplesmente fecha.
TBZ - Marcus Monti: ( 2019-03-19)
obs : pelo pgadmin conexao normal, nao aparece mensagem o studio simplesmente fecha
Para esta situação pelo jeito não tem solução.
João Victor Marques 22/04/2020 (há 2 anos)
Pablo, seria possível fazer com que os arquivos de conexao com o banco trabalhem de forma dinâmica de acordo com qual servidor esteja? Por exemplo, estou trabalhando com um servidor de feature, um de homologação e outro de produção. Cada um desses servidores possuem uma conexão diferente com um banco de dados diferente. Seria possível fazer com que os arquivos em app/config peguem configuracoes de acordo com qual ambiente o projeto esteja?
Paolo Bordoni Caldeira 13/10/2020 (há 1 ano)
No PHP 7.2+ a biblioteca mcrypt deu lugar ao libsodium, assim o php-mcrypt não está mais disponível no repositório sendo necessário compilar separadamente. Tem algum impacto em utilizar o libsodium no lugar do mcrypt?