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