El teu blog de Linux en català

Configuració d'un servidor Apache, MySQL, PHP i phpmyadmin a Fedora

Fa un temps vam crear un tutorial per configurar un servidor Apache, MySQL, PHP i phpmyadmin a l’Ubuntu. El pas de l’Ubuntu a Fedora em va portar inicialment alguns maldecaps a l’hora de muntar el meu servidor local. SELinux actua de moltes maneres que provoquen errors 403 Forbidden Access que em va costar molt resoldre. A continuació explique els passos que s’han de seguir, senzills i ràpids, per muntar un servidor Apache+PHP+MySQL i amb phpMyAdmin a Fedora (15).

Paquets necessaris

Per instal·lar els paquets necessaris, obrim un terminal i executem:
sudo yum install httpd php php-gd mysql-server php-mysql phpMyAdmin

Ara podem iniciar apache i mysql:
sudo /etc/init.d/httpd start
sudo /etc/init.d/mysqld start

Si obriu el navegador i aneu a http://localhost i hauríeu de veure un missatge informant que l’apache funciona (o simplement una pàgina que no és un error). Això vol dir que anem bé. Si aneu a http://localhost/phpmyadmin/, llavors haureu de veure un popup htaccess demanant-vos la contrasenya per entrar al phpmyadmin (en aquest moment no podreu entrar ja que no es permet l’entrada sense contrasenya). L’usuari per defecte de mysql és «root», sense cap contrasenya.

Configuració

Primer de tot, configurem el phpmyadmin. Obriu el fitxer següent:
sudo gedit /etc/phpMyAdmin/config.inc.php

Allà heu de cercar dues línies i posar-les tal i com les posem ací:
$cfg['Servers'][$i]['AllowNoPassword'] = TRUE;
$cfg['Servers'][$i]['auth_type'] = 'cookie';

Si volem fer servir virtualhosts i emmagatzemar els fitxers al nostre directori personal, haurem de fer que el SELinux ens ho permeta. Per fer-ho:
sudo setsebool -P httpd_enable_homedirs 1
sudo setsebool -P httpd_read_user_content 1

Finalment, el fitxer httpd.conf que es troba a /etc/httpd/conf/httpd.conf sembla que té una configuració per defecte que pot crear problemes de permisos (almenys en el meu cas). Jo vaig fer algunes modificacions per tal que tot funcionara. A més, al final de tot he posat les línies relatives als virtualhosts. Atès que el fitxer és llarg, vos deixe un enllaç des d’on el podeu baixar.

Fixeu-vos en les últimes línies, on es defineixen els hosts virtuals:
NameVirtualHost *:80
<VirtualHost *:80>
DocumentRoot /usr/share/phpMyAdmin
ServerName phpmyadmin.local
</VirtualHost>
<VirtualHost *:80>
DocumentRoot /home/pau/webs/gnulinux
Servername gnulinux.local
</VirtualHost>

Això ens permet que en accedir a l’adreça gnulinux.local des del nostre ordinador local, puguem accedir al contingut web que tenim a /home/pau/webs/gnulinux. De tota manera, resta una última configuració. Per a tots els virtualhosts hem de crear una entrada al fitxer /etc/hosts. D’aquesta manera, en aquest cas, el meu fitxer /etc/hosts queda com:
127.0.0.1 localhost.localdomain localhost
127.0.0.1 phpmyadmin.local gnulinux.local
::1 localhost6.localdomain6 localhost6

Després de fer aquests canvis, heu de reiniciar el servidor apache:
sudo /etc/init.d/httpd restart

1 comment

    • jordi on 25 de setembre de 2011 at 17:55

    Reply

    A mi em va passar el mateix. Vaig optar per desactivar SELinux de forma permanent!!!

Deixa un comentari

Your email address will not be published.