Salve salve, galera nuclear!!!
Hoje irei mostrar como instalar o Servidor Apache para poder hospedar sites com páginas web desenvolvida em HTML e PHP no GNU/Linux.
Instalando o Apache
- Debian/Ubuntu
# apt-get install apache2- Fedora/CentOS
# yum install httpdApós a instalação, inicie o Apache e coloque para iniciar durante o boot:
# service httpd start
# chkconfig httpd on- Slackware
Baixe o pacote do Apache, suas dependências e instale:
ftp://ftp.slackware-brasil.com.br/slackware-12.2/slackware/n/httpd-2.2.10-i486-1.tgz
ftp://ftp.slackware-brasil.com.br/slackware-12.2/slackware/l/apr-1.3.3-i486-1.tgz
ftp://ftp.slackware-brasil.com.br/slackware-12.2/slackware/l/apr-util-1.3.4-i486-1.tgz
Após a instalação feita, coloque o Apache para iniciar durante o boot e inicie:
ftp://ftp.slackware-brasil.com.br/slackware-12.2/slackware/n/httpd-2.2.10-i486-1.tgz
ftp://ftp.slackware-brasil.com.br/slackware-12.2/slackware/l/apr-1.3.3-i486-1.tgz
ftp://ftp.slackware-brasil.com.br/slackware-12.2/slackware/l/apr-util-1.3.4-i486-1.tgz
# installpkg apr-1.3.3-i486-1.tgz
# installpkg apr-util-1.3.4-i486-1.tgz
# installpkg httpd-2.2.10-i486-1.tgzApós a instalação feita, coloque o Apache para iniciar durante o boot e inicie:
# chmod +x /etc/rc.d/rc.httpd
# apachectl startConfigurando o Apache
Vamos fazer umas configurações no Apache conforme o necessário.
- Debian/Ubuntu
O diretório "/etc/apache2" é onde fica os arquivos de configuração. Para mudar a porta do servidor, modifique no arquivo "ports.conf" as seguintes linhas abaixo:
Salve o arquivo e recarregue as configurações no servidor:
NameVirtualHost *:80
Listen 80
Salve o arquivo e recarregue as configurações no servidor:
# /etc/init.d/apache2 reload- Fedora/CentOS
O diretório "/etc/httpd" é onde fica os arquivos de configuração. Todas as configurações são feitas no arquivo "httpd.conf" que fica no diretório "/etc/httpd/conf". Para mudar a porta do servidor, modifique a seguinte linha:
Salve o arquivo e recarregue as configurações no servidor:
Listen 80
Salve o arquivo e recarregue as configurações no servidor:
# service httpd reload- Slackware
O diretório "/etc/httpd" é onde fica os arquivos de configuração. Para mudar a porta do servidor, modifique no arquivo "httpd.conf" a seguinte linha:
Salve o arquivo e reinicie o servidor Apache:
Listen 80
Salve o arquivo e reinicie o servidor Apache:
# apachectl restartTestando o Apache
Com o Apache instalado, acesse o endereço "http://localhost/" que será exibida uma página de teste para indicar que o servidor está funcionando.
Suporte a PHP
Para hospedar no Apache, páginas dinâmicas desenvolvida em PHP, é necessário instalar os módulos do PHP.
Instalando o PHP
- Debian/Ubuntu
Instale o pacote do PHP e depois reinicie o Apache:
# apt-get install php5
# /etc/init.d/apache2 restart- Fedora/CentOS
Instale o pacote do PHP e depois reinicie o Apache:
# yum install php
# service httpd restart- Slackware
Baixe o pacote do PHP e instale:
ftp://ftp.slackware-brasil.com.br/slackware-12.2/slackware/n/php-5.2.8-i486-1.tgz
Após a instalação, para habilitar o PHP no Apache edite o arquivo "httpd.conf" descomentando a seguinte linha:
Salve o arquivo e reinicie o servidor Apache.
ftp://ftp.slackware-brasil.com.br/slackware-12.2/slackware/n/php-5.2.8-i486-1.tgz
# installpkg php-5.2.8-i486-1.tgzApós a instalação, para habilitar o PHP no Apache edite o arquivo "httpd.conf" descomentando a seguinte linha:
Include /etc/httpd/mod_php.conf
Salve o arquivo e reinicie o servidor Apache.
# apachectl restartMódulos PHP
Na instalação do PHP é instalado apenas os seguintes módulos para o funcionamento do PHP:
- libapache2-mod-php: Permite que o Apache 2 "entenda" o PHP.
- php: Contém os arquivos binários e de configuração para utilização do PHP.
- common: Contém documentação e arquivos de exemplo.
- hash: Suporte a algoritmos hash como MD5 e SHA1.
- cli: Fornece um interpretador de comando para testar Scripts PHP.
- curl: CURL é uma biblioteca para recuperar arquivos via FTP, GOPHER e HTTP.
- dev: Pacote contendo os arquivos fonte do PHP necessários para compilar módulos adicionais
- gd: Responsável por manipular arquivos PNG, JPEG, XPM e TTF diretamente de scripts PHP.
- imagick: Pacote que possibilita a manipulação de arquivos de imagem.
- imap: Pacote que permite suporte a IMAP.
- interbase: Responsável pela conexão ao banco de dados Interbase/Firebird.
- mcrypt: Suporta uma grande variedade de algoritmos de criptografia.
- memcache: Objeto de cache de memória. Muito útil para performance.
- mysql: Responsável pela conexão ao banco de dados MySQL.
- pear: É um repositório de código PHP focado na reutilização de código.
- pgsql: Responsável pela conexão ao banco de dados PostgreSQL.
- pspell: Checagem de ortografia. Vale a pena dar uma olhada no Aspell.
- recode: Permite a recodificação de caracteres.
- sybase: Responsável pela conexão ao banco de dados Sybase e Microsoft SQL Server.
- tidy: Permite limpar e manipular de arquivos HTML.
- xmlrpc: Basicamente utilizado para webservices, permite a comunicação entre processos.
- xsl: Permite transformar arquivos XML tanto em outro através de XSLT quanto HTML ou texto.
- Debian/Ubuntu
# apt-get install php5-cli php5-curl php5-dev php5-gd php5-imagick php5-imap php5-interbase php5-mcrypt php5-memcache php5-mysql php-pear php5-pgsql php5-pspell php5-recode php5-sybase php5-tidy php5-xmlrpc php5-xsl- Fedora/CentOS
# yum install php-cli php-curl php-devel php-gd php-pecl-imagick php-imap php-interbase php-mcrypt php-pecl-memcache php-mysql php-pear php-pgsql php-pspell php-recode php-mssql php-tidy php-xmlrpc php-xmlTestando o PHP
Para verificar se o PHP está ativo no Apache, crie um arquivo com o nome "info.php" no diretório raiz do servidor Web:
- Debian/Ubuntu: "/var/www"
- Fedora/CentOS: "/var/www/html"
- Slackware: "/srv/httpd/htdocs"
<?php
phpinfo();
?>
Salve o arquivo, e acesse o endereço "http://localhost/info.php", que será exibida a página com os detalhes da configuração do PHP e módulos ativos.
Virtual Hosts
O Virtual Host permite hospedar diversos sites, com domínios ou subdomínios diferentes num único servidor web e com um único endereço IP.
Vamos criar dois sites com os seguintes domínios:
- website1.com.br
- website2.com.br
- Debian/Ubuntu
# mkdir /var/www/website1
# mkdir /var/www/website2- Fedora/CentOS
# mkdir /var/www/html/website1
# mkdir /var/www/html/website2- Slackware
# mkdir /srv/httpd/htdocs/website1
# mkdir /srv/httpd/htdocs/website2Em cada diretório, crie dois subdiretórios com os seguintes nomes:
- public_html: é onde será armazenado as páginas do site que serão acessados.
- logs: é onde será armazenado os arquivos de Log de acesso.
- Debian/Ubuntu
# mkdir /var/www/website1/public_html
# mkdir /var/www/website2/public_html
# mkdir /var/www/website1/logs
# mkdir /var/www/website2/logs- Fedora/CentOS
# mkdir /var/www/html/website1/public_html
# mkdir /var/www/html/website2/public_html
# mkdir /var/www/html/website1/logs
# mkdir /var/www/html/website2/logs- Slackware
# mkdir /srv/httpd/htdocs/website1/public_html
# mkdir /srv/httpd/htdocs/website2/public_html
# mkdir /srv/httpd/htdocs/website1/logs
# mkdir /srv/httpd/htdocs/website2/logsAgora vai configurar no Apache para adicionar os dois sites.
- Debian/Ubuntu
Crie um arquivo para cada site no diretório "sites-available":
Adicione no arquivo "website1" as seguintes linhas abaixo:
E adicione no arquivo "website2" as seguintes linhas abaixo:
Depois ative ambos os sites e recarregue as configurações no servidor:
# touch /etc/apache2/sites-available/website1
# touch /etc/apache2/sites-available/website2Adicione no arquivo "website1" as seguintes linhas abaixo:
<virtualhost>
ServerAdmin Este endereço de e-mail está protegido contra spambots. Você deve habilitar o JavaScript para visualizá-lo.
DocumentRoot /var/www/website1/public_html
ServerName website1.com.br
ErrorLog /var/www/website1/logs/error.log
CustomLog /var/www/website1/logs/access.log combined
</virtualhost>
E adicione no arquivo "website2" as seguintes linhas abaixo:
<virtualhost>
ServerAdmin Este endereço de e-mail está protegido contra spambots. Você deve habilitar o JavaScript para visualizá-lo.
DocumentRoot /var/www/website2/public_html
ServerName website2.com.br
ErrorLog /var/www/website2/logs/error.log
CustomLog /var/www/website2/logs/access.log combined
</virtualhost>
Depois ative ambos os sites e recarregue as configurações no servidor:
# a2ensite website1
# a2ensite website2
# /etc/init.d/apache2 reload- Fedora/CentOS
Edite o arquivo "/etc/httpd/conf/httpd.conf", descomentando a seguinte linha abaixo:
E adicione no final do arquivo as seguintes linhas:
Depois de configurar, recarregue as configurações no servidor:
NameVirtualHost *:80
E adicione no final do arquivo as seguintes linhas:
<virtualhost>
ServerAdmin Este endereço de e-mail está protegido contra spambots. Você deve habilitar o JavaScript para visualizá-lo.
DocumentRoot /var/www/html/website1/public_html
ServerName website1.com.br
ErrorLog /var/www/html/website1/logs/error.log
CustomLog /var/www/html/website1/logs/access.log combined
</virtualhost>
<virtualhost>
ServerAdmin Este endereço de e-mail está protegido contra spambots. Você deve habilitar o JavaScript para visualizá-lo.
DocumentRoot /var/www/html/website2/public_html
ServerName website2.com.br
ErrorLog /var/www/html/website2/logs/error.log
CustomLog /var/www/html/website2/logs/access.log combined
</virtualhost>
Depois de configurar, recarregue as configurações no servidor:
# service httpd reload- Slackware
Edite o arquivo "/etc/httpd/httpd.conf", descomentando a seguinte linha abaixo:
Salve o arquivo, abre o arquivo "/etc/httpd/extra/httpd-vhosts.conf" e adicione as seguintes linhas:
Depois de configurar, reinicie o servidor Apache:
Include /etc/httpd/extra/httpd-vhosts.conf
Salve o arquivo, abre o arquivo "/etc/httpd/extra/httpd-vhosts.conf" e adicione as seguintes linhas:
<virtualhost>
ServerAdmin Este endereço de e-mail está protegido contra spambots. Você deve habilitar o JavaScript para visualizá-lo.
DocumentRoot /srv/httpd/htdocs/website1/public_html
ServerName website1.com.br
ErrorLog /srv/httpd/htdocs/website1/logs/error.log
CustomLog /srv/httpd/htdocs/website1/logs/access.log combined
</virtualhost>
<virtualhost>
ServerAdmin Este endereço de e-mail está protegido contra spambots. Você deve habilitar o JavaScript para visualizá-lo.
DocumentRoot /srv/httpd/htdocs/website2/public_html
ServerName website2.com.br
ErrorLog /srv/httpd/htdocs/website2/logs/error.log
CustomLog /srv/httpd/htdocs/website2/logs/access.log combined
</virtualhost>
Depois de configurar, reinicie o servidor Apache:
# apachectl restartAcessando os Sites
Crie uma página de teste para cada site, e salve com o nome "index.html" no subdiretório "public_html" de cada site.
Para poder acessar o site com o domínio, adicione no arquivo "/etc/hosts" o IP do servidor e o domínio:
127.0.0.1 website1.com.br
127.0.0.1 website2.com.br
Acesse os endereços "http://website1.com.br/" e "http://website2.com.br/", será exibido a página de teste que foi criada.
Pronto.
| < Anterior | Próximo > |
|---|










Comentários