Apache + mysql + php no slackware

3 09 2007

Bom primeiro vamos baixar os softwares necessários.

http://ftp.unicamp.br/pub/apache/httpd/httpd-2.2.8.tar.gz

http://br2.php.net/distributions/php-5.2.4.tar.gz

O mysql mantivemos a versão que já vem com o nosso slackware.

1- Compilando o Apache

Caso seu sistema tenha o apache e o php instalado remova-os e compile as novas versões. Se você já tiver as novas versões poderá manter ou mesmo versões mais antigas, isso vai de sua preferência. Lembre-se também se você estiver mechendo em um servidor de produção faça sempre backups das bases do mysql, das suas pages assim como alguma configuração especifica do apache e do php.ini. Como mencionado vamos remover o apache e php caso exista no sistema:

# removepkg httpd

# removepkg php

# removepkg mod_ssl

# rm –rf /etc/apache

Feito isso podemos começar:

# tar jxvf httpd-2.2.8.tar.bz2

# cd httpd-2.2.8

# ./configure –enable-so –prefix=/etc/apache –enable-ssl –with-ssl=/usr/include/openssl

# make

# make install

# cp /etc/apache/bin/apachectl /usr/bin

# apachectl start

Comentando as opções:

enable-so = Carrega os módulos na inicialização ou na reinialização do Apache;

enable-ssl = Ativa suporte a SSL;

A opções para compilação são inumeras… Usei apenas 2 que são uteis para a maioria dos casos.

2- Configurando o MySQL

O MySql no slackware pode ser instalado já com o sistema ou posteriormente tanto utilizando os pacotes .tgz como utilizando os sources.Supondo que já temos ele no sistema vamos apenas deixá-lo funcional.

# cd /usr/share/mysql/
# cp my-small.cnf /etc/my.cnf
# mysql_install_db
# cp mysql.server /etc/rc.d/rc.mysqld
# chmod a+x /etc/rc.d/rc.mysqld
# chown mysql:mysql /var/lib/mysql/ -R

# /etc/rc.d/rc.mysqld start
# mysql_secure_installation

Vamos receber as seguintes informação. Vamos respondendo tudo de acordo como está em negrito:

NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALLMySQL 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):como nao colocamos senha apenas dê um enter
OK, successfully used password, moving on…
Setting the root password ensures that nobody can log into the MySQL root user without the proper authorization.Set root password? [Y/n] [Y]Y
New password: (Digite aqui aquela que será a sua senha)
Re-enter new password: (Redigite a senha)
Password updated successfully!
Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] Y

Remove test database and access to it? [Y/n] Y

Reload privilege tables now? [Y/n] Y
Success!

Com o MySql pronto e funcional vamos apenas configurar o local dos nossos logs para isso edite o my.cnf em /etc e adicione a seguinte linha:

[mysqld]

log=/var/log/mysql/mysqld.log

Veja que temos o [mysqld] e vamos apenas colocar o local dos nossos logs. Agora vamos criar o diretório dos logs e dar permissão:

# mkdir /var/log/mysql
# chown mysql:mysql /var/log/mysql# killall mysqld
# /etc/rc.d/rc.mysqld start

# cat /var/log/mysql/mysqld.log

/usr/libexec/mysqld, Version: 5.0.37-log (Source distribution). started with:
Tcp port: 3306 Unix socket: /var/run/mysql/mysql.sock
Time Id Command Argument

Com isso já temos o nosso MySql rodando e totalmente funcional.Vamos partir para o PHP.

3- Compilando o PHP

Agora vamos compilar o nosso PHP:

# tar jxvf php-5.2.4.tar.bz2

# cd php-5.2.4

# ./configure –with-apxs2=/etc/apache/bin/apxs –prefix=/etc/php5 \

–with-mysql –with-pear –with-gettext –with-iconv –with-gd \

–with-openssl –enable-ftp –with-mhash

# make

# make install

Agora copie o php.ini para /etc

# cp php.ini-dist /etc/php.ini

 

Verifique se o httpd.conf tem as seguintes linhas. Se não tiver vamos adicioná-las:

LoadModule php5_module modules/libphp5.so

AddType application/x-httpd-php .php .phtml

DirectoryIndex index.html index.htm index.php

Agora crie um arquivo com o nome index.php contendo o seguinte conteúdo:

<?php

phpinfo();

?>

# apachectl restart

Agora podemos acessar nosso browser preferido e conferir o suporte do nosso apache e php:http://seu_site/index.php ou http://localhost/index.php

Pronto…. Com isso já temos nosso apache + mysql + php no slackware…

Testado com sucesso no slackware 10.2, 11 e 12.Vale lembrar que as opções na compilação são inumeras.

Att.Cleison Monteiro

Apocalipse @ irc.freenode.net