[resolvido] executar arquivos fora da var/www - configuração do alias

Iniciado por Ostrock, 10 de Outubro de 2007, 17:31

tópico anterior - próximo tópico

Ostrock

Estou com problemas para usar o apache+php+mysql, segui vários tutoriais e nenhum deu resultado, instalei e reinstalei diversas vezes, mas nada resolve.

Estou com o seguinte erro:

CitarSyntax error on line 1 of /etc/apache2/conf.d/alias: alias takes two arguments a fakename, and a real name

Alguém sabe como resolver isso?

little_oak

Configurando Apache2+PHP5+MySQL+PHPMYADMIN




Neste tutorial irei mostrar como configurar o Apache 2, PHP5, MySQL e PHPMyadmin, em um exemplo passo a passo.

Considerações iniciais:

Software:

- SO: Red Hat
- Kernel: Estável

Hardware:
=========

- IBM Netfinity Xeon 3 GHZ
- Memória: 512 MB RAM ECC
- Disco Rigído: 36 GB UW SCSI.

Para organizar vamos criar um diretório no qual ficará os arquivos nos quais iremos compilar, em meu exemplo criei um diretório em /LAMP2

depois entre no diretório pré-criado siga os passos abaixo:

$ cd LAMP2

1) Configurando o biblioteca LibXML2


$ tar -zxvf libxml2-2.6.0.tar.gz
$ cd libxml2-2.6.0
$ /configure
$ make
$ su
# make install


2) Configurando a biblioteca zLIB


$tar -zxvf zlib-1.2.2.tar.gz
$cd zlib-1.2.2
$./configure
$ make
$ su
# make install


3) Configurando o Apache 2


$ tar -zxvf httpd-2.0.52.tar.gz
$ cd httpd-2.0.52

$./configure --prefix=/usr/local/apache2 --enable-cgi --enable-so --enable-rewrite --enable-mime-magic --enable-suexec --enable-static-rotateslogs --enable-spellig --enable-log-forensic
$ make
$ su
# make install


4) MySQL


# groupadd mysql
# useradd -g mysql mysql
# cd /usr/local
# gunzip < /path/para/mysql/compactado.tar.gz |tar -xvf -
# ln -s mysql-full-path mysql
# cd mysql
# scripts/mysql_install_db
# chown -R root .
# chown -R mysql data
# chgrp -R mysql .
# bin/mysqld_safe --user=mysql &


Para conferir se o MySQL foi iniciado use ps -aef | grep mysql

5) PHP5


$ tar -zxvf php-5.0.3.RC1.tar.gz
$ cd php-5.0.3
$ ./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql=/usr/local/mysql --prefix=/usr/local/apache2/php --with-config-file-path=/usr/local/apache2/php --enable-force-cgi-redirect --disable-cgi --with-z=/usr/include/linux


6) Configurando Apache2 com suporte a PHP5

Para configurar o Apache 2 com suporte a PHP5 primeiramente iremos criar um link simbólico dentro do diretório /etc/ apontando para /usr/local/apache2


# cd /etc/
# ln -s /usr/local/apache2 .
# cd /etc/apache2


Antes de alterar os dados do arquivo original de configuração do Apache 2 faça um backup do arquivo:


# cp /etc/apache2/conf/httpd.conf /etc/apache2/conf/httpd.conf.original


Editando o arquivo httpd.conf

edite o arquivo httpd.conf adicionando as seguintes linhas:

DirectoryIndex index.html index.html.var index.cgi index.php index.php4 index.php5 default.html default.php blank.html
ServerName o-nome-para-seu-servidor-web
LoadModule php5_module modules/libphp5.so
AddType application/x-httpd-php php
AddType application/x-httpd-php-source phps
#ServerTokens
ServerSignatures Off


Para testar o suporte ao PHP5 no Apache2, crie um arquivo no diretório público do apache com o seguinte conteúdo.Em nosso exemplo crieremos um arquivo chamado info.php

<?php
phpinfo ()
?>

execute via browser o caminho do seu servidor mais o nome do arquivo phpinfo.
Ex:

http://10.0.0.1/info.php

Configurando o MySQL
====================

O primeiro passo para configurar o MySQL é adicionar a senha do usuário Root do MySQL, para isso use o comando

# /usr/local/mysql/bin/mysqladmin -u root password sua-senha-aqui


Um Ótimo aplicativo para gerênciamento do MySQL é o phpMyadmin, com ele você poderá¡ adicionar,remover, alterar , Dropar fazer Querys e muito mais junto a MySQL ainda contando com uma interface Web muito amigavél.

Para instalar ele entre na pasta PHP e descompacte o aplicativo phpMyadmin:

$ tar -zxvf phpMyadmin-2.6.2.tar.gz

copie a pasta descompactada para dentro do diretório público do Apache 2, caso você ainda não saiba qual o diretório público do Apache 2 de acordo com nossa instalação, o caminho está logo abaixo:

/usr/local/apache2/htdocs

Então sabendo o caminho copie a pasta do phpMyadmin para dentro de Htdocs

# cp -Rvf phpMyadmin-2.6.2 /usr/local/apache2/htdocs/phpmyadmin

Agora devemos configurar o arquivo config.inc.php que gerência a conexão do phpMyadmin ao MySQL:

# vi /usr/local/apache2/htdocs/phpmyadmin/config.inc.php

Procure pelas linhas:

$cfg['Servers'][$i]['auth_type'] = 'config'; // Authentication method (config, http or cookie based)?
$cfg['Servers'][$i]['user'] = 'root'; // MySQL user
$cfg['Servers'][$i]['password'] = 'sua-senha-aqui'; // MySQL password (only needed


e também:


$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = 'sua-senha-aqui';


Salve o arquivo agora e saia.

Para testar o phpMyadmin entre com o endereço em seu navegador:

http://endereço-de-seu-servidor/phpmyadmin/

Por segurança é ideal que você coloque um sistema de autênticação no phpMyadmin pois desta forma qualquer pessoa através da web conseguiria manipular com poderes de root
suas bases de dados.

Lembramos ainda que as configurações acima são básicas, para um servidor em produção é necessário que seja verificado todos os recursos necessários e configurados acima dos exemplos dados acima.


arlei

Citação de: Ostrock online 10 de Outubro de 2007, 17:31
Estou com problemas para usar o apache+php+mysql, segui vários tutoriais e nenhum deu resultado, instalei e reinstalei diversas vezes, mas nada resolve.

Estou com o seguinte erro:

CitarSyntax error on line 1 of /etc/apache2/conf.d/alias: alias takes two arguments a fakename, and a real name

Alguém sabe como resolver isso?

Olá amigo.

Eu não possuo este arquivo alias nas minhas configurações do apache, mais a mensagem me parece clara, ou seja, ele informa que vc possui um erro na linha 1 deste arquivo. Então esperimente edita-lo de forma a corrigir o que pode estar errado nesta linha.

sudo vim /etc/apache2/conf.d/alias

T+
Arlei

Ostrock

Obrigado aos dois colegas que responderam.

O arquivo alias não é "obritgatório", criei apenas pq não queria tirar a pasta var/www do rrot pra poder gravar, configurando este arquivo você consegue gravar em uma asta com acesso normal e fazer com que o apache interprete esta como se estivesse na root, pra isso precisa-se inserir o seguinte código:

Alias /URL-path /localização_da_pasta/
<Directory /localização_da_pasta/>
Options Indexes FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>


ou como no exemplo deste tópico em que a pasta a ser virtualizada é www cirada dentro da pasta pessoal sendo o caminho /home/guilherme (no meu caso).

Fica assim:

Alias /guilherme /home/guilherme/www/
<Directory /home/guilherme/www/>
Options Indexes FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>


O fato é que na primeira linha deve ser digitada da forma como consta acima, com todos os espaços e na hora de fazer as modificações acabei removendo este, com isso não conseguia o resultado esperado.

Valeu pela ajuda dos dois.