Visão Geral
Este tutorial provê instruções incluindo comandos de shell, um guia passo a passo e recursos adicionais no rodapé desta página. Existem várias versões diferentes de Linux (e Unix) e instalações PHP variarão de SO para SO. Se você nunca trabalhou com programas Linux ou linha de comando antes isso pode parece desafiador de início, contudo, existem muitos recursos bons e tutoriais online, assim se você ficar preso simplesmente busque na internet por recursos adicionais.
Conectando ao Linux
Se você estiver conectando a um Servidor Linux em Nuvem à partir do Windows ou macOS, exitem vários programas que você pode utilizar. Você pode querer começar com guias de seu provedor de hospedagem sobre como conectar-se. Se possui um Mac, [ssh] é integrado ao terminal assim você pode conectar-se sem ter de instalar nada. Aqui estão alguns recursos para conectar ao Linux.
Conectando à partir do Windows
Conectanto à partir do macOS
Código de Referência Rápida
Esta seção mostra várias opções de instalação diferentes para Linux utilizando o shell (terminal / command-prompt). Se você estiver familiarizado com o uso do shell e está instalando em um dos SOs listados, você pode utilizar esta referência rápida. Estas instruções atualmente fornecem um visão geral da instalação inicial. Dependendo de qual é o seu SO você talvez queira instalar extensões adicionais do Apache para atualizar diversos arquivos de configuração.
Configuração Rápida
wget https://www.fastsitephp.com/downloads/create-fast-site.sh
sudo bash create-fast-site.sh
sudo bash create-fast-site.sh -a
sudo bash create-fast-site.sh -n
Instalação do Apache e do PHP no Ubuntu (Detalhada)
sudo apt update
sudo apt upgrade
sudo apt install apache2 php
sudo apt install libapache2-mod-php
sudo apt install php7.2-sqlite php7.2-gd php7.2-bc php7.2-simplexml
sudo apt install php7.2-zip
sudo nano /etc/apache2/apache2.conf
sudo nano /etc/apache2/mods-available/deflate.conf
sudo service apache2 restart
sudo adduser ubuntu www-data
sudo chown ubuntu:www-data -R /var/www
sudo chmod 0775 -R /var/www
cd /var/www/html
echo "<?php phpinfo(); ?>" | sudo tee phpinfo.php
sudo rm phpinfo.php
cd ~
wget https://github.com/fastsitephp/starter-site/archive/master.zip
sudo apt install unzip
unzip master.zip
cp -r ~/starter-site-master/app /var/www/app
cp -r ~/starter-site-master/app_data /var/www/app_data
cp -r ~/starter-site-master/scripts /var/www/scripts
cp -r ~/starter-site-master/public/. /var/www/html
ls /var/www
ls -la /var/www/html
php /var/www/scripts/install.php
sudo rm /var/www/html/.htaccess
sudo rm /var/www/html/Web.config
sudo rm /var/www/html/index.html
rm -r ~/starter-site-master
rm master.zip
ls ~
cd ~
wget https://github.com/fastsitephp/fastsitephp/archive/master.zip
unzip master.zip
cp -r ~/fastsitephp-master/tests /var/www/html/tests
sudo rm -R /var/www/html/tests
sudo rm -R ~/fastsitephp-master
rm master.zip
Instalação do Apache e PHP no Red Hat, CentoOS e Fedora
sudo yum update –y
sudo yum install vim-common
sudo su
yum install httpd
yum install php
apachectl start
sudo semanage fcontext -a -t httpd_sys_rw_content_t "/var/www/app_data(/.*)?"
sudo restorecon -Rv /var/www/app_data
sudo chown apache:apache -R /var/www/app_data/*
Instalação do Apache e PHP no FreeBSD
su -
pkg install apache24
sysrc apache24_enable=yes
service apache24 start
pkg install mod_php73
pkg install php73-json php73-filter php73-hash php73-ctype
pkg install php73-openssl php73-mbstring php73-zip
pkg install php73-xml php73-bcmath
pkg install php73-pdo php73-pdo_sqlite
pkg install php73-simplexml php73-xmlwriter
pkg install php73-session
vi /usr/local/etc/apache24/Includes/php.conf
<IfModule dir_module>
DirectoryIndex index.php index.html
<FilesMatch "\.php$">
SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch "\.phps$">
SetHandler application/x-httpd-php-source
</FilesMatch>
</IfModule>
cat /usr/local/etc/apache24/Includes/php.conf
cp /usr/local/etc/php.ini-production /usr/local/etc/php.ini
cd /usr/local/www/apache24/data
echo "<?php echo phpinfo(); ?>" | tee phpinfo.php
service apache24 restart
chown -R ec2-user:www /usr/local/www
chmod 2775 /usr/local/www
find /usr/local/www -type d -exec chmod 2775 {} \;
find /usr/local/www -type f -exec chmod 0664 {} \;
cd ~
fetch https://github.com/fastsitephp/starter-site/archive/master.zip
unzip master.zip
cp -r ~/starter-site-master/app /usr/local/www/apache24/app
cp -r ~/starter-site-master/app_data /usr/local/www/apache24/app_data
cp -r ~/starter-site-master/scripts /usr/local/www/apache24/scripts
cp -r ~/starter-site-master/public/. /usr/local/www/apache24/data
ls /usr/local/www/apache24
ls -la /usr/local/www/apache24/data
php /usr/local/www/apache24/scripts/install.php
rm /usr/local/www/apache24/data/.htaccess
rm /usr/local/www/apache24/data/Web.config
rm /usr/local/www/apache24/data/index.html
rm /usr/local/www/apache24/data/phpinfo.php
rm -r ~/starter-site-master
rm master.zip
cd ~
fetch https://github.com/fastsitephp/fastsitephp/archive/master.zip
unzip master.zip
cp -r ~/fastsitephp-master/tests /usr/local/www/apache24/data/tests
sudo rm -R /usr/local/www/apache24/data/tests
sudo rm -R ~/fastsitephp-master
rm ~/master.zip
Exemplo Passo a Passo
Este exemplos foi realizado no Ubuntu utilizando um Servidor Lightsail da Amazon AWS e, comandos digitados no terminal baseado em navegador web fornecido.
Atualizar a Lista da Ferramenta de Pacote Avançada (APT)

O processo de atualização exibe o log de ações enquanto roda e deve completar rapidamente. Assim que atualizar você será capaz de digitar no terminal novamente.

Install Apache, PHP, and then enable PHP for Apache and PHP. Detailed log info will be displayed when each command runs.
sudo apt install apache2
sudo apt install php
sudo apt install libapache2-mod-php

Determinar a versão PHP instalada; estará claramente disponível no log do instalador. Isto pode ser utilizado para opcionalmente instalar diversas extensões. Exemplo: sudo apt install php7.2-sqlite php7.2-gd php7.2-bc php7.2-simplexml

Opcional - Habilite uma página Fallback para que o [index.php] não seja mostrado na URL. Edite o arquivo de configuração do Apache utilizando: sudo nano /etc/apache2/apache2.conf
. Assim o arquivo será mostrado no editor editor.


Role pelo arquivo e procure pela linha: <Directory /var/www/>
. Adicione a linha FallbackResource /index.php
abaixo dela. Neste exemplo CGIPassAuth On
é também adicionada para que o Cabeçalho de Requisição HTTP [Authorization] seja disponibilizado para o PHP ao utilizar $_SERVER['HTTP_AUTHORIZATION']
; contudo, isto não é necessário ao utilizar o Objeto Request do FastSitePHP. Os menus exit/save/etc do nano serão mostrados no rodapé da tela.

Salve o arquivo utilizando {control}+x
-> y
-> {enter}


Reinicie o Apache utilizando sudo service apache2 restart

Defina as Permissões de Usuário para que arquivos web possam ser modificados pelo usuário que você utiliza.
sudo adduser ubuntu www-data
sudo chown ubuntu:www-data -R /var/www
sudo chmod 0775 -R /var/www

Crie um arquivo [phpinfo.php] para confirmar que o PHP funciona.
cd /var/www/html
echo "<?php phpinfo(); ?>" | sudo tee phpinfo.php

Utilize o IP Público do Servidor para visualizar a página padrão do Apache em um navegador.

Confirme que o PHP funciona e veja informações detalhadas de instalação e configuração utilizando a página [phpinfo.php].
