Como instalar Apache 2, Mysql 5 e php 5 no Mac Os X LION 10.7.x (testado 10.7.1)

Standard

Este artigo vai parecer muito com a instalação do apache, php e mysql sob mac os x snow leopard, porém existem algumas particularidades que precisam ser detalhadas. Antemão parte do artigo do mamp sob snow leopard será copiado, depois, iremos detalhar pontos MUITO importantes para que tudo funcione corretamente. Estamos testando em um hackintosh LION (10.7.1), literalmente current (updates mais novas).

Vamos lá:

No outro artigo, para habilitarmos o apache usamos o comando com poder de root (sudo) para ativar o web server, mas agora isto só é permitido sem stress via Preferências do Sistema -> Sharing (compartilhamento) e marcando o Web Server (compartilhamento de arquivos web), lhe mostraremos imagens abaixo:

Abrindo o menu de sharing para apache

Abrindo o menu de sharing para apache

Clicando em compartilhamento de páginas web

Clicando em compartilhamento de páginas web

Note acima que clicamos em COMPARTILHAMENTO junto as preferências de sistema e em seguida marcamos o compartilhamento do apache (páginas web). Toda mudança significativa do mac faz controle de permissões (segurança), por isso coloque seu login e senha para autorizar a mudança.

Feito isto teremos de entrar no conf do apache para liberarmos o php5, veja os passos que diremos.

Nosso segundo ponto e muito importante é entrar no arquivo de configuração do apache 2 afim de habilitarmos o suporte ao PHP, vamos por a mão na massa? Estamos usando o VIM, um editor muito eficaz e leve (todos que já amaram o vi um dia com certeza amam/amarão o vim):

Little-oaks-appunixlabs:~ sudo vim /etc/apache2/httpd.conf

 

Dentro deste arquivo devemos remover o comentário da linha abaixo:

LoadModule php5_module libexec/apache2/libphp5.so

Recomendo que aperte a tecla / no vim e digite php5, você já vai cair em cima da linha a ser descomentada, em seguida, no sinal de libra (#), caminhe até ele e aperte x
Isto nos deixará com suporte ao PHP, depois basta apertar ESC e digitar isto:
:wq!
Assim que pressionar ENTER o arquivo será salvo.
Vamos explicar o por que de :wq!

: representa comando para o arquivo
W representa ESCREVER
Q representa QUIT (sair)
! representa EXECUTAR as instruções informadas

Para finalizarmos o suporte ao php precisamos rodar o seguinte comando:

Little-oaks-appunixlabs:~ sudo apachectl restart

É mania de todos criar um arquivo com a função phpinfo() contida nele, porém, se fizermos isso “de cara” o apache vai exibir muitos warnings (interpretados pelo php) por questões de permissões e de existência do arquivo php.ini. Para sanarmos isto deveremos fazer o seguinte:

Little-oaks-appunixlabs:~ cd /etc
Little-oaks-appunixlabs: sudo cp php.ini.default php.ini
Little-oaks-appunixlabs: sudo chmod 666 php.ini

Estamos copiando o php.ini default do /etc (área de arquivos de configurações em Unix-like systems) e atribuindo permissões 666 (dono pode ler e escrever no arquivo, grupo também e demais também).
No arquivo php.ini temos de localizar o trecho aonde o TimeZone é identificado (mas está comentado). É muito importante mudar esta linha e ajustarmos nosso timezone corretamente, pois isto nos dará um horário adequado. Para isto devemos proceder da seguinte forma:
Little-oaks-appunixlabs: sudo vim php.ini
Em seguida aperte a tecla / para localizar um termo, informe o seguinte date.timezone, isto lhe deixará na linha acima da que precisamos mudar. Descomente a linha abaixo para que fique assim:
date.timezone =

Você removerá o ; apertando x em cima dele. Para deixarmos o vim em modo de edição de arquivos precisamos apertar a tecla i, isto nos dará poder de editar o arquivo (saindo de modo comando).
Agora iremos colocar depois do = o seguinte:
America/Sao_Paulo
Então o resultado final será —> date.timezone = America/Sao_Paulo
Dê ESC e digite
:wq!
Aperte ENTER e terá o arquivo salvo.

 

As vezes você pode estar se perguntando:

Poxa, mas meu timezone não tem nada a ver com o de Sampa, o que faço?
Relaxa, rapá! A galera do Appunix pensou em você! Abaixo segue a lista de timezone da América:
http://www.php.net/manual/en/timezones.america.php

Se mesmo assim não lhe agradar você pode usar os globais:
http://www.php.net/manual/en/timezones.others.php

Mas é impossível você não se agradar dos timezones da América, são repletos.
Os mais comuns que são usados são:
America/Porto_Velho
America/Noronha
America/Rio_Branco
America/Recife
America/Sao_Paulo
America/Porto_Acre
Mas escolha o que mais lhe agradar.

Assim que decidir qual seu TimeZone você deve reiniciar o apache para reler o php.ini e ativar o negócio:
Little-oaks-appunixlabs: sudo apachectl restart

Agora precisamos instalar o Mysql 5 para que possa trabalhar da forma que almejamos.
Para irmos direto ao ponto acesse o link abaixo:
http://dev.mysql.com/downloads/mysql/5.1.html#macosx-dmg
Se cuide para baixar a versão ideal para você.
Aí é 64 bits? Não sabe como é? Quer saber como seu Mac Os X LION está operando? Clique na maça, depois clique em Sobre Este MAC, em seguida clique em Software (Categoria) e procure pela linha Kernel de 64-bit e Extensões: Sim (conforme a foto abaixo):

como ver informações do seu mac os x

como ver informações do seu mac os x

Caso seja Sim é 64 bits (x86_64), então baixe o pacote para 64 bits.
Vamos simbora?
Baixe o arquivo x86_64 no formato DMG.

baixar pacote mysql 64 bits (DMG)

baixar pacote mysql 64 bits (DMG)

baixar pacote mysql 64 bits (DMG)

Quando você clicar no formato DMG automaticamente o site da Mysql vai te convidar a logar-se lá com eles, mas basta prestar a atenção (conforme imagens abaixo) para não precisar perder tempo com esta burocracia, se você quer baixar direto (melhor Né?) basta fazer o seguinte, clique no link abaixo:
HTTP://dev.mysql.com/get/Downloads/MySQL-5.1/mysql-5.1.58-osx10.6-x86.dmg/form/http://mysql.cce.usp.br/
Deixa o download terminar siga os passos das fotos abaixo (literalmente instalar o mysql e seu ícone), Devemos concluir os passos extras para adição do Mysql como sendo parte do painel administrativo, para isto siga os passos abaixo:

passo1

passo1

 




















Temos de focar em um ponto em comum.

Temos um script na pasta de download que abrimos (do MYSQL).
Veja o seguinte, MYSQL.PREFPANE é um script que serve para adicionar o script (ícone) de inicialização do MYSQL dentro das preferências do sistema, por isso DEVEMOS executar ele sim, autorizando-o com a senha do usuário. (sem isso teremos de inicializar na mão com o comando mysqld (VIXE, mac é praticidade RAPÁ!)






Feito isto iremos confirmar se o mysql está rodando com o seguinte comando (dentro do terminal):

Little-oaks-appunixlabs: /usr/local/mysql/bin/mysql –user=little_oak

Substitua little_oak por SEU_USUÁRIO.

Isto fará com que você esteja dentro do mysql (Via terminal).

Veja como abrir o terminal:

Façamos o seguinte, clique em terminal (veja a imagem abaixo):

como abrir terminais no mac os x

como abrir terminais no mac os x

como abrir terminais no mac os x

Feito isto iremos reiniciar o apache 2 para garantir que o nosso servidor está integrando literalmente tudo, faremos com o seguinte comando:

Little-oaks-appunixlabs: sudo apachectl restart

Para conferirmos tudo vamos entrar dentro da nossa pasta pessoal, na pasta Sites e criar um arquivo chamado index.php. Dentro dele iremos colocar o seguinte (ISTO EM /Library/WebServer/Documents):
Ou seja -> sudo vim /Library/WebServer/Documents/index.php

< ?php phpinfo(); ?>

 

Quando citamos a parte do mysql, praticamente contorna a viagem de redefinir a senha de root. Se dermos ouvidos ao Mágico de OZ e inventarmos redefinir senhas vamos brincar com isso ó:

Mac-Pro-de-little-oak:etc little_oak$ sudo /usr/local/mysql/bin/mysqld –skip-grant-tables –user=root

grant all…

flush privileges e talz, NÃO PRECISA DISSO, o mac entende que você é um cara que é punk no sistema, que só dá sudo quando sabe o que tá fazendo.

Para conferir como alterar a senha de root do mysql basta clicar no nosso artigo de como redefinir a senha de root no mysql dentro do mac os x lion sem complicações.

PONTO EXTRA:

Como a galera está falando muito de MCRYPT no Mac Os X Lion, o path padrão dele é /usr/share/file/magic/mcrypt
, se quiser descomente a linha do mcrypt no php.ini e mande ficha.

 

Uma coisa massa, se você quer ver a documentação do apache meta bala em http://localhost/manual/, veja a imagem abaixo:

 

manual do apache

manual do apache

 

Se você curtiu esse post dê share 😛

Como instalar php apache mysql phpmyadmin no Centos 6

Standard

Olá pessoal, como vocês sabem somos fanáticos pelo ambiente LAMP e agora iremos colocar para vocês um how to simples porém funcional de como instalar o apache, mysql, php e phpmyadmin na plataforma CentOs 6.

Vamos começar deixando tudo atualizado e corrigido:

[root@appunixlabs ~]# yum clean all && yum update -y

Agora vamos instalar o mysql:

[root@appunixlabs ~]# yum install mysql mysql-server -y

Devemos dar pemrissões para que o mysql (serviço) carregue no momento do boot:

[root@appunixlabs ~]# chkconfig –levels 235 mysqld on

E em seguida iniciar o sistema de banco de dados:

[root@appunixlabs ~]# /etc/init.d/mysqld start

Para setarmos as senhas de mysql devemos usar o seguinte comando:

[root@appunixlabs ~]# mysql_secure_installation

NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MySQL
SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!

In order to log into MySQL to secure it, we’ll need the current
password for the root user. If you’ve just installed MySQL, and
you haven’t set the root password yet, the password will be blank,
so you should just press enter here.

Enter current password for root (enter for none):
OK, successfully used password, moving on…

Setting the root password ensures that nobody can log into the MySQL
root user without the proper authorisation.

Set root password? [Y/n] Enter para confirmar que quer mudar a senha de root
New password: Coloque a nova senha de root
Re-enter new password: Confirme a nova senha de root
Password updated successfully!
Reloading privilege tables..
… Success!

By default, a MySQL installation has an anonymous user, allowing anyone
to log into MySQL without having to have a user account created for
them. This is intended only for testing, and to make the installation
go a bit smoother. You should remove them before moving into a
production environment.

Remove anonymous users? [Y/n] Pressione Enter para invalidar acessos anônimos
… Success!

Normally, root should only be allowed to connect from ‘localhost’. This
ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n] Pressione Enter para Remover o acesso remoto ao banco de dados
… Success!

By default, MySQL comes with a database named ‘test’ that anyone can
access. This is also intended only for testing, and should be removed
before moving into a production environment.

Remove test database and access to it? [Y/n] Pressione Enter para remover a base de dados de testes
– Dropping test database…
… Success!
– Removing privileges on test database…
… Success!

Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.

Reload privilege tables now? [Y/n] Pressione enter para que o flushprivileges opere imediatamente e valide as mudanças
… Success!

Cleaning up…

All done! If you’ve completed all of the above steps, your MySQL
installation should now be secure.

Thanks for using MySQL!

[root@appunixlabs ~]#

Agora vamos instalar o apache com o seguinte comando:

[root@appunixlabs ~]# yum install httpd -y

Agora devemos deixar o apache com a mesma essência de serviços do mysql, operando assim que o boot for realizado:

[root@appunixlabs ~]# chkconfig –levels 235 httpd on

E para iniciarmos o bichão (apache):

[root@appunixlabs ~]# /etc/init.d/httpd start

Se quisermos acessar o server para garantir que o mesmo está operando filé em nosso sistema operacional, caso o server esteja em rede podemos acessa-lo através de seu respectivo ip. Pressupondo que o ip deste server seja 10.0.0.1, para que meu pc em rede confirme se o apache está fino podemos abrir nosso navegador e colocar o seguinte endereço: http://10.0.0.1
Uma página do apache sob CentOs será exibida mostrando que tudo está filé.

Vamos agora instalar o php

[root@appunixlabs ~]# yum install php

Devemos reiniciar o apache para garantir que a integração do interpretador esteja 100% eficaz:

[root@appunixlabs ~]# /etc/init.d/httpd restart

Aonde fica o danado do path do php em meu sistema operacional Centos???
Calma, fique tranquilo, tudo está situado em /var/www/html, e para provar que sua instalação ficou filé faça o seguinte:
Nessa pasta crie um arquivo chamado index.php, abra-o com o vim ou crie-o com echo e dentro dele coloque uma instrução, veja o passo a passo:

[root@appunixlabs ~]# echo "<?php phpinfo(); ?>" >> index.php

Pressupondo que o ip deste server seja 10.0.0.1, para que meu pc em rede confirme se o apache está fino podemos abrir nosso navegador e colocar o seguinte endereço: http://10.0.0.1/index.php

Deverão ser exibidas todas as extensões e variáveis globais predefinidas na instalação nesta página acessada.

Agora precisamos fazer com que o mysql esteja integrado com o php, para isso iremos rodar o seguinte comando:

[root@appunixlabs ~]# yum install php-mysql php-gd php-imap php-ldap php-mbstring php-odbc php-pear php-xml php-xmlrpc -y

E para garantir que tudo está filé e com integração perfeita com nosso container vamos rodar o seguinte:

[root@appunixlabs ~]# /etc/init.d/httpd restart

Precisamos fechar com chave de ouro agora no ponto de instalação fo phpmyadmin.
Para isto devemos fazer o seguinte-> Instalar o repositório RPMForge que é simplesmente punk e em seguida instalar os pacotes vindouros dele. Vamos por a mão na massa?

[root@appunixlabs ~]# rpm –import http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt

Se seu sistema for 64 bits rode:

[root@appunixlabs ~]# yum install http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm

Se seu sistema for 32 bits rode:

[root@appunixlabs ~]# yum install http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.2-2.el6.rf.i686.rpm

Agora vamos instalar o phpmyadmin:

[root@appunixlabs ~]# yum install phpmyadmin -y

Precisamos agora criar aliases para que o phpmyadmin seja acessível sem qualquer transtorno junto ao apache, para isto devemos mudar o seguinte conf-> /etc/httpd/conf.d/phpmyadmin.conf e devemos mudar o seguinte, comentar as linhas abaixo (caso não estejam comentadas):

#<Directory "/usr/share/phpmyadmin">
#  Order Deny,Allow
#  Deny from all
#  Allow from 127.0.0.1
#</Directory>


E garantir que os aliases estejam conforme os abaixo dessa linha:

Alias /phpmyadmin /usr/share/phpmyadmin
Alias /phpMyAdmin /usr/share/phpmyadmin
Alias /mysqladmin /usr/share/phpmyadmin

Feito isso devemos garantir que nosso phpmyadmin faça validação por HTTP e não por meio de cookies, devemos editar o seguinte conf /usr/share/phpmyadmin/config.inc.php e mudar a seguinte linha:

/* Authentication type */
$cfg[‘Servers’][$i][‘auth_type’] = ‘http’;

Em http fica cookie, troque cookie por http para evitar dor de cabeça.

Depois de salvar o arquivo faça com que tudo esteja validado reiniciando o apache:

[root@appunixlabs ~]# /etc/init.d/httpd restart

Pressupondo que o ip deste server seja 10.0.0.1, para que meu pc em rede confirme se o apache está fino podemos abrir nosso navegador e colocar o seguinte endereço: http://10.0.0.1/phpmyadmin

Tudo ok?

Abraços e bons estudos.

Fontes:

Centos: http://centos.org/
Apache: http://apache.org
Mysql: http://mysql.com/
PhpMyadmin: http://www.phpmyadmin.net/home_page/index.php
PHP: http://www.php.net/
Linux: http://en.wikipedia.org/wiki/Linux
RPMForge: http://rpmrepo.net/RPMforge
How to forge: http://www.howtoforge.com/installing-apache2-with-php5-and-mysql-support-on-centos-6.0-lamp

Como forçar a leitura de arquivos .htaccess no Ubuntu pelo Apache 2

Standard

Calma gente, nada de pânico, nada de gritos e nem stress, os caras que fazem isto por você estão aqui!

Realidade

Ter o apache instalado no ubuntu por meio de apt-get ou aptitude, ter um arquivo htaccess dentro do diretório público e o mesmo não estar sendo lido.

 

Saída

Como sempre, lá vai a coisa “mastigadinha”:

1 – Acesse o diretório das configurações do apache referente aos virtual hosts, ou seja -> /etc/apache2/sites-available/

2 – Assim que chegar lá, acesse o arquivo referente ao seu site, no caso do meu foi o amigo Default, ele tinha um conteúdo semelhante a:

NameVirtualHost *
<VirtualHost *>
ServerAdmin webmaster@localhost

DocumentRoot /var/www/
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>

ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory “/usr/lib/cgi-bin”>
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>

ErrorLog /var/log/apache2/error.log

# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn

CustomLog /var/log/apache2/access.log combined
ServerSignature On

Alias /doc/ “/usr/share/doc/”
<Directory “/usr/share/doc/”>
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>

</VirtualHost>

############################

Para corrigir a coisa altere somente os trechos como abaixo:

NameVirtualHost *
<VirtualHost *>
ServerAdmin webmaster@localhost

DocumentRoot /var/www/
<Directory />
Options FollowSymLinks Indexes
AllowOverride AuthConfig
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride AuthConfig
Order allow,deny
allow from all
</Directory>

Apache 2 Mysql 5 PHP 5 e phpmyadmin no Ubuntu 10.04 Lucid Lynx

Standard

Hoje, para a gama de desenvolvedores PHP que o mercado tem é indispensável que se tenha um ambiente lamp (linux + apache + php + mysql e como adicional o phpmyadmin, ferramenta indispensável para gerenciar bancos de dados mysql sem qualquer dificuldade) operando pelo menos em um notebook de alguém. Este How to, anteriormente postado em meu antigo blog foi testado (antes de ser postado) em um ambiente com:

Processador Celeron 900 (2.2 ghz),
2 gb de ram ddr 667,
hd 160 gb com 5400 rpm,
Ubuntu 10.04 (Lucid Lynx).
Ressalto que usei o gestor de pacotes e habilitei o suporte a pacotes instáveis e também o repositório partner (mais abaixo posto como fazer).
Por isto talvez as versões dos programas instalados a seguir podem variar em poucos pontos, por exemplo: PHP 5.2.13 e seria instalado, caso não atualizasse os pacotes para instáveis ficaria em 5.2.9.

Os passos a seguir são simples e não demandam muito conhecimento em Linux, bastando somente que ejam seguidos a risca para que nenhum ponto seja esquecido.
Vamos lá:

Clique em Aplicativos->Acessórios->Terminal

Digite o Comando:

sudo apt-get install apache2

A saída deste comando, assim que confirmado com a opção S (yes em inglês seria Y) assemelha-se com:

Lendo listas de pacotes… Pronto
Construindo árvore de dependências
Lendo informação de estado… Pronto
Os pacotes extra a seguir serão instalados:
apache2-mpm-worker apache2-utils apache2.2-bin apache2.2-common libapr1 libaprutil1 libaprutil1-dbd-sqlite3 libaprutil1-ldap
Pacotes sugeridos:
apache2-doc apache2-suexec apache2-suexec-custom
Os NOVOS pacotes a seguir serão instalados:
apache2 apache2-mpm-worker apache2-utils apache2.2-bin apache2.2-common libapr1 libaprutil1 libaprutil1-dbd-sqlite3 libaprutil1-ldap
0 pacotes atualizados, 9 pacotes novos instalados, 0 a serem removidos e 0 não atualizados.
É preciso baixar 3328kB de arquivos.
Depois desta operação, 10,1MB adicionais de espaço em disco serão usados.
Você quer continuar [S/n]? S
0% [Aguardando por cabeçalhos]
Obter:1 http://br.archive.ubuntu.com/ubuntu/ lucid/main libapr1 1.3.8-1build1 [116kB]
Obter:2 http://br.archive.ubuntu.com/ubuntu/ lucid/main libaprutil1 1.3.9+dfsg-3build1 [85,4kB]
Obter:3 http://br.archive.ubuntu.com/ubuntu/ lucid/main libaprutil1-dbd-sqlite3 1.3.9+dfsg-3build1 [27,1kB]
Obter:4 http://br.archive.ubuntu.com/ubuntu/ lucid/main libaprutil1-ldap 1.3.9+dfsg-3build1 [25,1kB]
Obter:5 http://br.archive.ubuntu.com/ubuntu/ lucid/main apache2.2-bin 2.2.14-5ubuntu8 [2622kB]
Obter:6 http://br.archive.ubuntu.com/ubuntu/ lucid/main apache2-utils 2.2.14-5ubuntu8 [159kB]
Obter:7 http://br.archive.ubuntu.com/ubuntu/ lucid/main apache2.2-common 2.2.14-5ubuntu8 [290kB]
Obter:8 http://br.archive.ubuntu.com/ubuntu/ lucid/main apache2-mpm-worker 2.2.14-5ubuntu8 [2364B]
Obter:9 http://br.archive.ubuntu.com/ubuntu/ lucid/main apache2 2.2.14-5ubuntu8 [1482B]
Baixados 3328kB em 40s (81,4kB/s)
Selecionando pacote previamente não selecionado libapr1.
(Lendo banco de dados … 148327 arquivos e diretórios atualmente instalados).
Desempacotando libapr1 (de …/libapr1_1.3.8-1build1_i386.deb) …
Selecionando pacote previamente não selecionado libaprutil1.
Desempacotando libaprutil1 (de …/libaprutil1_1.3.9+dfsg-3build1_i386.deb) …
Selecionando pacote previamente não selecionado libaprutil1-dbd-sqlite3.
Desempacotando libaprutil1-dbd-sqlite3 (de …/libaprutil1-dbd-sqlite3_1.3.9+dfsg-3build1_i386.deb) …
Selecionando pacote previamente não selecionado libaprutil1-ldap.
Desempacotando libaprutil1-ldap (de …/libaprutil1-ldap_1.3.9+dfsg-3build1_i386.deb) …
Selecionando pacote previamente não selecionado apache2.2-bin.
Desempacotando apache2.2-bin (de …/apache2.2-bin_2.2.14-5ubuntu8_i386.deb) …
Selecionando pacote previamente não selecionado apache2-utils.
Desempacotando apache2-utils (de …/apache2-utils_2.2.14-5ubuntu8_i386.deb) …
Selecionando pacote previamente não selecionado apache2.2-common.
Desempacotando apache2.2-common (de …/apache2.2-common_2.2.14-5ubuntu8_i386.deb) …
Selecionando pacote previamente não selecionado apache2-mpm-worker.
Desempacotando apache2-mpm-worker (de …/apache2-mpm-worker_2.2.14-5ubuntu8_i386.deb) …
Selecionando pacote previamente não selecionado apache2.
Desempacotando apache2 (de …/apache2_2.2.14-5ubuntu8_i386.deb) …
Processando gatilhos para man-db …
Processando gatilhos para ufw …
Processando gatilhos para ureadahead …
ureadahead will be reprofiled on next reboot
Configurando libapr1 (1.3.8-1build1) …

Configurando libaprutil1 (1.3.9+dfsg-3build1) …

Configurando libaprutil1-dbd-sqlite3 (1.3.9+dfsg-3build1) …
Configurando libaprutil1-ldap (1.3.9+dfsg-3build1) …
Configurando apache2.2-bin (2.2.14-5ubuntu8) …
Configurando apache2-utils (2.2.14-5ubuntu8) …
Configurando apache2.2-common (2.2.14-5ubuntu8) …
Enabling site default.
Enabling module alias.
Enabling module autoindex.
Enabling module dir.
Enabling module env.
Enabling module mime.
Enabling module negotiation.
Enabling module setenvif.
Enabling module status.
Enabling module auth_basic.
Enabling module deflate.
Enabling module authz_default.
Enabling module authz_user.
Enabling module authz_groupfile.
Enabling module authn_file.
Enabling module authz_host.
Enabling module reqtimeout.

Configurando apache2-mpm-worker (2.2.14-5ubuntu8) …
* Starting web server apache2 apache2: Could not reliably determine the server’s fully qualified domain name, using 127.0.1.1 for ServerName
[ OK ]

Configurando apache2 (2.2.14-5ubuntu8) …

Processando gatilhos para libc-bin …
ldconfig deferred processing now taking place

Assim que esta etapa terminar teremos o apache rodando, mas precisamos prosseguir, digite:

sudo apt-get install php5 libapache2-mod-php5

Esta etapa instala o php5 com integração em modo DSO junto ao apache (como módulo do apache 2). Sempre confirme que quer instalar apertando S (caso solicite em inglês, Y). A saída do comando acima assemelha-se e muito com a saída informada logo abaixo:

Lendo listas de pacotes… Pronto
Construindo árvore de dependências
Lendo informação de estado… Pronto
Os pacotes extra a seguir serão instalados:
apache2-mpm-prefork php5-common
Pacotes sugeridos:
php-pear php5-suhosin
Os pacotes a seguir serão REMOVIDOS:
apache2-mpm-worker
Os NOVOS pacotes a seguir serão instalados:
apache2-mpm-prefork libapache2-mod-php5 php5 php5-common
0 pacotes atualizados, 4 pacotes novos instalados, 1 a serem removidos e 0 não atualizados.
É preciso baixar 3376kB de arquivos.
Depois desta operação, 8790kB adicionais de espaço em disco serão usados.
Você quer continuar [S/n]? S
Obter:1 http://br.archive.ubuntu.com/ubuntu/ lucid/main apache2-mpm-prefork 2.2.14-5ubuntu8 [2422B]
Obter:2 http://br.archive.ubuntu.com/ubuntu/ lucid-proposed/main php5-common 5.3.2-1ubuntu4.1 [541kB]
Obter:3 http://br.archive.ubuntu.com/ubuntu/ lucid-proposed/main libapache2-mod-php5 5.3.2-1ubuntu4.1 [2831kB]
Obter:4 http://br.archive.ubuntu.com/ubuntu/ lucid-proposed/main php5 5.3.2-1ubuntu4.1 [1114B]
Baixados 3376kB em 8s (389kB/s)
dpkg: apache2-mpm-worker: problemas de dependência, mas removendo assim mesmo conforme pedido:
apache2 depende de apache2-mpm-worker (= 2.2.14-5ubuntu8) | apache2-mpm-prefork (= 2.2.14-5ubuntu8) | apache2-mpm-event (= 2.2.14-5ubuntu8) | apache2-mpm-itk (= 2.2.14-5ubuntu8); porém:
Pacote apache2-mpm-worker está para ser removido.
Pacote apache2-mpm-prefork não está instalado.
Pacote apache2-mpm-event não está instalado.
Pacote apache2-mpm-itk não está instalado.
(Lendo banco de dados … 148902 arquivos e diretórios atualmente instalados).
Removendo apache2-mpm-worker …
* Stopping web server apache2 apache2: Could not reliably determine the server’s fully qualified domain name, using 127.0.1.1 for ServerName
… waiting [ OK ]
Selecionando pacote previamente não selecionado apache2-mpm-prefork.
(Lendo banco de dados … 148895 arquivos e diretórios atualmente instalados).
Desempacotando apache2-mpm-prefork (de …/apache2-mpm-prefork_2.2.14-5ubuntu8_i386.deb) …
Selecionando pacote previamente não selecionado php5-common.
Desempacotando php5-common (de …/php5-common_5.3.2-1ubuntu4.1_i386.deb) …
Selecionando pacote previamente não selecionado libapache2-mod-php5.
Desempacotando libapache2-mod-php5 (de …/libapache2-mod-php5_5.3.2-1ubuntu4.1_i386.deb) …
Selecionando pacote previamente não selecionado php5.
Desempacotando php5 (de …/php5_5.3.2-1ubuntu4.1_all.deb) …
Configurando apache2-mpm-prefork (2.2.14-5ubuntu8) …
* Starting web server apache2 apache2: Could not reliably determine the server’s fully qualified domain name, using 127.0.1.1 for ServerName
[ OK ]

Configurando php5-common (5.3.2-1ubuntu4.1) …
Configurando libapache2-mod-php5 (5.3.2-1ubuntu4.1) …

Creating config file /etc/php5/apache2/php.ini with new version
* Reloading web server config apache2 apache2: Could not reliably determine the server’s fully qualified domain name, using 127.0.1.1 for ServerName
[ OK ]

Configurando php5 (5.3.2-1ubuntu4.1) …

Apesar de já termos instalado o apache 2 + php 5 é necessário reiniciar o apache 2 afim de que o serviço possa reler suas configurações e assim possamos ter uma reposta da instalação a qual realizamos. Para isto use o comando:

sudo /etc/init.d/apache2 restart

A mensagem exibida por este comando é muito semelhante a mensagem a seguir:

* Restarting web server apache2 apache2: Could not reliably determine the server’s fully qualified domain name, using 127.0.1.1 for ServerName
… waiting apache2: Could not reliably determine the server’s fully qualified domain name, using 127.0.1.1 for ServerName
[ OK ]

Não precisa confirmar  nada junto ao /var/www pois o php DEVE estar operando junto com o apache 2.

Agora vamos prosseguir com o mysql 5. Para instalar o mesmo digite:

sudo apt-get install mysql-server

Confirme com S (ou Y caso seja americano), a saída deve ser semelhante com:

Obter:1 http://br.archive.ubuntu.com/ubuntu/ lucid/main mysql-common 5.1.41-3ubuntu12 [97,1kB]
Obter:2 http://br.archive.ubuntu.com/ubuntu/ lucid/main libnet-daemon-perl 0.43-1 [46,9kB]
Obter:3 http://br.archive.ubuntu.com/ubuntu/ lucid/main libplrpc-perl 0.2020-2 [36,0kB]
Obter:4 http://br.archive.ubuntu.com/ubuntu/ lucid/main libdbi-perl 1.609-1build1 [798kB]
Obter:5 http://br.archive.ubuntu.com/ubuntu/ lucid/main libmysqlclient16 5.1.41-3ubuntu12 [1931kB]
Obter:6 http://br.archive.ubuntu.com/ubuntu/ lucid/main libdbd-mysql-perl 4.012-1ubuntu1 [135kB]
Obter:7 http://br.archive.ubuntu.com/ubuntu/ lucid/main mysql-client-core-5.1 5.1.41-3ubuntu12 [176kB]
Obter:8 http://br.archive.ubuntu.com/ubuntu/ lucid/main mysql-client-5.1 5.1.41-3ubuntu12 [8136kB]
Obter:9 http://br.archive.ubuntu.com/ubuntu/ lucid/main mysql-server-core-5.1 5.1.41-3ubuntu12 [4711kB]
Obter:10 http://br.archive.ubuntu.com/ubuntu/ lucid/main mysql-server-5.1 5.1.41-3ubuntu12 [7007kB]
Obter:11 http://br.archive.ubuntu.com/ubuntu/ lucid/main libhtml-template-perl 2.9-1 [65,8kB]
Obter:12 http://br.archive.ubuntu.com/ubuntu/ lucid/main mysql-server 5.1.41-3ubuntu12 [93,0kB]
Baixados 23,2MB em 1min 58s (196kB/s)
Pré-configurando pacotes …
Selecionando pacote previamente não selecionado mysql-common.
(Lendo banco de dados … 150463 arquivos e diretórios atualmente instalados).
Desempacotando mysql-common (de …/mysql-common_5.1.41-3ubuntu12_all.deb) …
Selecionando pacote previamente não selecionado libnet-daemon-perl.
Desempacotando libnet-daemon-perl (de …/libnet-daemon-perl_0.43-1_all.deb) …
Selecionando pacote previamente não selecionado libplrpc-perl.
Desempacotando libplrpc-perl (de …/libplrpc-perl_0.2020-2_all.deb) …
Selecionando pacote previamente não selecionado libdbi-perl.
Desempacotando libdbi-perl (de …/libdbi-perl_1.609-1build1_i386.deb) …
Selecionando pacote previamente não selecionado libmysqlclient16.
Desempacotando libmysqlclient16 (de …/libmysqlclient16_5.1.41-3ubuntu12_i386.deb) …
Selecionando pacote previamente não selecionado libdbd-mysql-perl.
Desempacotando libdbd-mysql-perl (de …/libdbd-mysql-perl_4.012-1ubuntu1_i386.deb) …
Selecionando pacote previamente não selecionado mysql-client-core-5.1.
Desempacotando mysql-client-core-5.1 (de …/mysql-client-core-5.1_5.1.41-3ubuntu12_i386.deb) …
Selecionando pacote previamente não selecionado mysql-client-5.1.
Desempacotando mysql-client-5.1 (de …/mysql-client-5.1_5.1.41-3ubuntu12_i386.deb) …
Selecionando pacote previamente não selecionado mysql-server-core-5.1.
Desempacotando mysql-server-core-5.1 (de …/mysql-server-core-5.1_5.1.41-3ubuntu12_i386.deb) …
Processando gatilhos para man-db …
Configurando mysql-common (5.1.41-3ubuntu12) …
Selecionando pacote previamente não selecionado mysql-server-5.1.
(Lendo banco de dados … 150828 arquivos e diretórios atualmente instalados).
Desempacotando mysql-server-5.1 (de …/mysql-server-5.1_5.1.41-3ubuntu12_i386.deb) …
Selecionando pacote previamente não selecionado libhtml-template-perl.
Desempacotando libhtml-template-perl (de …/libhtml-template-perl_2.9-1_all.deb) …
Selecionando pacote previamente não selecionado mysql-server.
Desempacotando mysql-server (de …/mysql-server_5.1.41-3ubuntu12_all.deb) …
Processando gatilhos para ureadahead …
Processando gatilhos para man-db …
Configurando libnet-daemon-perl (0.43-1) …
Configurando libplrpc-perl (0.2020-2) …
Configurando libdbi-perl (1.609-1build1) …
Configurando libmysqlclient16 (5.1.41-3ubuntu12) …

Configurando libdbd-mysql-perl (4.012-1ubuntu1) …
Configurando mysql-client-core-5.1 (5.1.41-3ubuntu12) …
Configurando mysql-client-5.1 (5.1.41-3ubuntu12) …
Configurando mysql-server-core-5.1 (5.1.41-3ubuntu12) …
Configurando mysql-server-5.1 (5.1.41-3ubuntu12) …
mysql start/running, process 4808

Configurando libhtml-template-perl (2.9-1) …
Configurando mysql-server (5.1.41-3ubuntu12) …
Processando gatilhos para libc-bin …
ldconfig deferred processing now taking place

Os passos a seguir mostram o mysql solicitando dados extras. Iremos colocar imagens dos passos a seguir:
imagens 1 e 2 -> MYSQL solicitando a senha de root, digite-a e em seguida repita a mesma. Escolha uma senha ao seu critério. Caso seja um ambiente de produção real recomendamos que use caracteres $#%@!& para sua senha afim de que em um caso de vulnerabilidade por brute force o atacante perdure por muitos dias (ou meses) na tentativa de quebrar a senha.


imagem de requisição de repetição da senha de root:

Estamos muito próximos da etapa final. Os passos a seguir mostram como integrar o php 5 + apache 2 + mysql 5 para que operem de maneira correta, assim como adicionar o phpmyadmin a esta instalação:

sudo apt-get install libapache2-mod-auth-mysql php5-mysql phpmyadmin

Confirme com S (caso seja americano confirme com Y). A saída para este comando deve ser semelhante a:

Lendo listas de pacotes… Pronto
Construindo árvore de dependências
Lendo informação de estado… Pronto
Os pacotes extra a seguir serão instalados:
dbconfig-common javascript-common libjs-mootools libmcrypt4 libt1-5 php5-gd php5-mcrypt wwwconfig-common
Pacotes sugeridos:
libmcrypt-dev mcrypt postgresql-client apache apache-ssl
Os NOVOS pacotes a seguir serão instalados:
dbconfig-common javascript-common libapache2-mod-auth-mysql libjs-mootools libmcrypt4 libt1-5 php5-gd php5-mcrypt php5-mysql phpmyadmin wwwconfig-common
0 pacotes atualizados, 11 pacotes novos instalados, 0 a serem removidos e 0 não atualizados.
É preciso baixar 5404kB de arquivos.
Depois desta operação, 21,9MB adicionais de espaço em disco serão usados.
Você quer continuar [S/n]? S
Obter:1 http://br.archive.ubuntu.com/ubuntu/ lucid/main dbconfig-common 1.8.44ubuntu1 [474kB]
Obter:2 http://br.archive.ubuntu.com/ubuntu/ lucid/universe wwwconfig-common 0.2.1 [22,8kB]
Obter:3 http://br.archive.ubuntu.com/ubuntu/ lucid/universe javascript-common 7 [3854B]
Obter:4 http://br.archive.ubuntu.com/ubuntu/ lucid/main libapache2-mod-auth-mysql 4.3.9-12ubuntu1 [25,6kB]
Obter:5 http://br.archive.ubuntu.com/ubuntu/ lucid/universe libjs-mootools 1.2.4.0~debian1-1 [248kB]
Obter:6 http://br.archive.ubuntu.com/ubuntu/ lucid/universe libmcrypt4 2.5.8-3.1 [76,1kB]
Obter:7 http://br.archive.ubuntu.com/ubuntu/ lucid/main libt1-5 5.1.2-3build1 [155kB]
Obter:8 http://br.archive.ubuntu.com/ubuntu/ lucid-proposed/main php5-gd 5.3.2-1ubuntu4.1 [34,8kB]
Obter:9 http://br.archive.ubuntu.com/ubuntu/ lucid/universe php5-mcrypt 5.3.2-0ubuntu1 [15,2kB]
Obter:10 http://br.archive.ubuntu.com/ubuntu/ lucid-proposed/main php5-mysql 5.3.2-1ubuntu4.1 [64,2kB]
Obter:11 http://br.archive.ubuntu.com/ubuntu/ lucid/universe phpmyadmin 4:3.3.2-1 [4285kB]
Baixados 5404kB em 45s (118kB/s)
Pré-configurando pacotes …
Selecionando pacote previamente não selecionado dbconfig-common.
(Lendo banco de dados … 150920 arquivos e diretórios atualmente instalados).
Desempacotando dbconfig-common (de …/dbconfig-common_1.8.44ubuntu1_all.deb) …
Selecionando pacote previamente não selecionado wwwconfig-common.
Desempacotando wwwconfig-common (de …/wwwconfig-common_0.2.1_all.deb) …
Selecionando pacote previamente não selecionado javascript-common.
Desempacotando javascript-common (de …/javascript-common_7_all.deb) …
Selecionando pacote previamente não selecionado libapache2-mod-auth-mysql.
Desempacotando libapache2-mod-auth-mysql (de …/libapache2-mod-auth-mysql_4.3.9-12ubuntu1_i386.deb) …
Selecionando pacote previamente não selecionado libjs-mootools.
Desempacotando libjs-mootools (de …/libjs-mootools_1.2.4.0~debian1-1_all.deb) …
Selecionando pacote previamente não selecionado libmcrypt4.
Desempacotando libmcrypt4 (de …/libmcrypt4_2.5.8-3.1_i386.deb) …
Selecionando pacote previamente não selecionado libt1-5.
Desempacotando libt1-5 (de …/libt1-5_5.1.2-3build1_i386.deb) …
Selecionando pacote previamente não selecionado php5-gd.
Desempacotando php5-gd (de …/php5-gd_5.3.2-1ubuntu4.1_i386.deb) …
Selecionando pacote previamente não selecionado php5-mcrypt.
Desempacotando php5-mcrypt (de …/php5-mcrypt_5.3.2-0ubuntu1_i386.deb) …
Selecionando pacote previamente não selecionado php5-mysql.
Desempacotando php5-mysql (de …/php5-mysql_5.3.2-1ubuntu4.1_i386.deb) …
Selecionando pacote previamente não selecionado phpmyadmin.
Desempacotando phpmyadmin (de …/phpmyadmin_4%3a3.3.2-1_all.deb) …
Processando gatilhos para man-db …
Processando gatilhos para libapache2-mod-php5 …
* Reloading web server config apache2 apache2: Could not reliably determine the server’s fully qualified domain name, using 127.0.1.1 for ServerName
[ OK ]
Processando gatilhos para doc-base …
Processing 26 changed 1 added doc-base file(s)…
Registering documents with scrollkeeper…
Configurando dbconfig-common (1.8.44ubuntu1) …

Creating config file /etc/dbconfig-common/config with new version

Configurando wwwconfig-common (0.2.1) …
Configurando javascript-common (7) …

Configurando libapache2-mod-auth-mysql (4.3.9-12ubuntu1) …
Configurando libjs-mootools (1.2.4.0~debian1-1) …
Configurando libmcrypt4 (2.5.8-3.1) …

Configurando libt1-5 (5.1.2-3build1) …

Configurando php5-gd (5.3.2-1ubuntu4.1) …
Configurando php5-mcrypt (5.3.2-0ubuntu1) …
Configurando php5-mysql (5.3.2-1ubuntu4.1) …
Configurando phpmyadmin (4:3.3.2-1) …
dbconfig-common: writing config to /etc/dbconfig-common/phpmyadmin.conf

Creating config file /etc/dbconfig-common/phpmyadmin.conf with new version

Creating config file /etc/phpmyadmin/config-db.php with new version
granting access to database phpmyadmin for phpmyadmin@localhost: success.
verifying access for phpmyadmin@localhost: success.
creating database phpmyadmin: success.
verifying database phpmyadmin exists: success.
populating database via sql… done.
dbconfig-common: flushing administrative password
* Reloading web server config apache2 apache2: Could not reliably determine the server’s fully qualified domain name, using 127.0.1.1 for ServerName
[ OK ]

Processando gatilhos para libc-bin …
ldconfig deferred processing now taking place

Estamos muito próximos da reta final, agora basta devemos escolher qual container vai operar como servidor para o phpmyadmin, devemos escolhe apache (segundo a imagem a seguir retrata as opções):

Na imagem a seguir, que será a tela apresentada para você diga Ok para que o dbconfig ajuste a base do phpmyadmin:

E por fim devemos definir a senha de root do phpmyadmin, ressaltamos que esta senha fica a sua escolha, conforme a tela a seguir:

Pronto. Não precisa testar o banco de dados com funções php (mysql_connect…), na realidade, se seguir os pontos a risca (pré-testados) não ocorrerão problemas. Use o comando a seguir:

sudo /etc/init.d/apache2 restart

O apache será reiniciado.
Para finalizar, precisamos mover os arquivos do phpmyadmin para um ambiente visível na web, ou pelo menos visível quando digitarmos http://localhost/phpmyadmin cairmos exatamente na tela do phpmyadmin.

Use o seguinte comando:

cp -rp /usr/share/phpmyadmin /var/www

Pronto.
Se quiser testar o phpmyadmin basta acessar http://localhost/phpmyadmin e informar root como login e a senha que você definiu como root no momento da instalação do mysql.

Obrigado por sua atenção.
Abraços e visite sempre o AppUnix – Seu portal Unix-LIKE.

Fedora 10: Lamp2 – linux apache 2 mysql e php 5 + ruby + python

Standard

Vou mandar ver em um how to interessante para os amantes do LAMP sob fedora. Todos que usam Fedora devem (ou deveriam) saber que a versão atual deste fabuloso sistema encontra-se na 10. Iremos fazer um how to sobre lamp 2 no Fedora 10, então atente para estar usando Fedora 10.

Requisitos:

Internet (se rápida será melhor ainda),
Fedora 10,
Vontade de rodar o lamp2 no Fedora 10 ?:) ,
Estar logado como root.

Indo ao Combate

Após instalar seu Fedora acesse o console como root e execute os seguintes comandos:

yum update -y

Isso vai atualizar os repositórios e recursos do sistema (kernel, utilitários  e etc).

Após vamos instalar o mysql:

yum -y install mysql mysql-devel mysql-server

Isso vai instalar o mysql, mas logo após sua instalação aplique os comandos abaixo:

chkconfig –levels 235 mysqld on
/etc/init.d/mysqld start

Confirme se a porta já está ativa e esperando conexões:

netstat -tap | grep mysql

Isto deve gerar uma saída mais ou menos assim:

tcp        0      0 *:mysql                     *:*                         LISTEN      2407/mysqld

Após faça este ajuste aqui:

vi /etc/my.cnf

#skip-networking

Comentar a linha acima.

Reinicie o mysql com o comando:

/etc/init.d/mysqld restart

Pronto, defina a senha de root do mysql com os comandos abaixo:

mysqladmin -u root password Sua_nova_SENHA
mysqladmin -h maquina.meudominio.com -u root password Sua_nova_SENHA

Isso aplicará a senha de root do mysql.

Agora vamos aplicar php, python e ruby + apache 2:

yum -y install httpd php php-devel php-gd php-imap php-ldap php-mysql php-odbc php-pear php-xml php-xmlrpc php-eaccelerator php-magickwand php-magpierss php-mapserver php-mbstring php-mcrypt php-mhash php-mssql php-shout php-snmp php-soap php-tidy curl curl-devel perl-libwww-perl ImageMagick libxml2 libxml2-devel

chkconfig –levels 235 httpd on

Pronto, depois disso faça o teste com —>

/etc/init.d/httpd start

Instale o ruby:

yum install httpd-devel ruby ruby-devel

cd /tmp
wget http://www.modruby.net/archive/mod_ruby-1.3.0.tar.gz
tar zxvf mod_ruby-1.3.0.tar.gz
cd mod_ruby-1.3.0/
./configure.rb –with-apr-includes=/usr/include/apr-1
make
make install

vi /etc/httpd/conf.d/ruby.conf

LoadModule ruby_module modules/mod_ruby.so

/etc/init.d/httpd restart

yum install mod_python

/etc/init.d/httpd restart

Prontooo!

Desabilitando Funções do PHP em servidores!

Standard

Algumas funções do Php precisam ser desabilitadas em servidores web compartilhados. Altere os mesmos em:

/usr/lib/php.ini
Se o Zend foi compilado, o caminho pode ser:
/usr/local/Zend/etc/php.ini

Lozalize a linha: disable_functions = e digite as funções:

xec, system, passthru, shell_exec, escapeshellarg, escapeshellcmd, proc_close, proc_open, dl, popen

Ou, mais completo:

dl, system, exec, shell_exec, chown, chgrp, escapeshellcmd, putenv, popen, pclose, passthru, proc_open, proc_get_status, proc_nice, proc_close, proc_terminate, posix_ctermid, posix_get_last_error, posix_getcwd, posix_getegid, posix_geteuid, posix_getgid, posix_getgrgid, posix_getgrnam, posix_getgroups, posix_getlogin, posix_getpgid, posix_getpgrp, posix_getpid, posix_getppid, posix_getpwnam, posix_getpwuid, posix_getrlimit, posix_getsid, posix_getuid, posix_isatty, posix_kill, posix_mkfifo, posix_setegid, posix_seteuid, posix_setgid, posix_setpgid, posix_setsid, posix_setuid, posix_strerror, posix_times, posix_ttyname, posix_uname

FONTE: http://www.forumcpanel.com.br/index.php?showtopic=368&pid=2002&mode=threaded&start=#entry2002