# No aparecen los paquetes para PHP !!

## Diabliyo

Hola:

Uso Gentoo AMD64 2008.0, y me descarge apache2 y php:

```
//por default bajo apache2

shell# emerge apache

//por default bajo PHP5

shell#emerge php
```

Configure /etc/conf.d/apache2 y agrege la linea el argumento -D USERDIR para tener disponible paginas web para los usuarios del sistema, y apache corre perfectamente !!...

El problema es PHP, al descargarlo solamente creo este directorio /etc/php/ y dentro existen dos carpetas vacias y el archivo de configuraicon php.ini. Solo que no encuentro el mod_php.so para cargarlo con el APACHE... De echo se necesitan dos archivos: mod_php.so y mod_php-apache2.conf. El archivo mod_php-apache2.conf, lo encontre en el directorio /usr/portage/dev-lang/php/files/70_mod_php.conf-apache2 y este mismo lo copie hacia /etc/apache2/modules/ con el nombre de: 70_mod_php-apache2.conf, pero falta el modulo mod_php.so para especificarlo en el /etc/apache2/httpd.conf.

Alguien que me pueda orientar ??, ya que en el portage no se visualiza nada de mod_php ni libphp !!...

bye bye

----------

## Stolz

Para tener PHP, con añadir APACHE2_OPTS="-... -D PHP5 ..." en /etc/conf.d/apache2 debería bastar. El archivo /etc/apache2/modules.d/70_mod_php5.conf debería de encargarse de añadir la linea LoadModule correcta.

Creo que estás tratando de hacer las cosas a mano de forma similar a lo que hacías en otro sistema y por eso te estás liando. Echa un vistazo a todos los archivos de /etc/apache2/ para saber como se configura Apache en Gentoo. Verás que Portage ya te ha hecho (casi) todo el trabajo. En /etc/apache2/modules.d/*.conf puedes ver los nombres y las rutas de los módulos. Por ejemplo, tu mod_php.so seguramente sea  libphp5.so

----------

## Inodoro_Pereyra

Si no tenés ganas de leer la documentación, entonces usá locate, slocate o alguna aplicación similar para encontrar los archivos que necesites la próxima vez.

Los archivos son siempre los mismos pero cambian de ubicación de distro en distro.

Salud!

----------

## Diabliyo

 *Stolz wrote:*   

> Para tener PHP, con añadir APACHE2_OPTS="-... -D PHP5 ..." en /etc/conf.d/apache2 debería bastar. El archivo /etc/apache2/modules.d/70_mod_php5.conf debería de encargarse de añadir la linea LoadModule correcta.
> 
> Creo que estás tratando de hacer las cosas a mano de forma similar a lo que hacías en otro sistema y por eso te estás liando. Echa un vistazo a todos los archivos de /etc/apache2/ para saber como se configura Apache en Gentoo. Verás que Portage ya te ha hecho (casi) todo el trabajo. En /etc/apache2/modules.d/*.conf puedes ver los nombres y las rutas de los módulos. Por ejemplo, tu mod_php.so seguramente sea  libphp5.so

 

No companero, no es que lo quiera hacer a mano, es que simplemente en el directorio /etc/apache2/modules/ no existia el archivo 70_mod_php5.conf, este archivo estaba en el directorio /usr/portage/dev-lang/php/files/... vaya, nada que ver ese directorio con el que deberia estar... Es por eso que hice el movimiento del archivo a mano :S !!...

Por otra parte, el archivo 70_mod_php5.conf, indica/invoca por si solo la carga del archivo: libphp5.so, pero dicho archivo no existe, asi que apache da error al intentar cargarse !!... Ya que libphp5.so[b] deberia estar en el directorio: [b]/usr/lib64/apacge2/modules/

Es por eso mi insisitencia....

 *Inodoro_Pereyra wrote:*   

> Si no tenés ganas de leer la documentación, entonces usá locate, slocate o alguna aplicación similar para encontrar los archivos que necesites la próxima vez.
> 
> Los archivos son siempre los mismos pero cambian de ubicación de distro en distro.
> 
> Salud!

 

Ya lei ese manual y el de actualizacion, y aun asi al hacer emerge php, no me descargo el libphp5.so, y ademas el archivo de configuracion 70_mod_php5.conf no lo posiciono en la carpeta que debia..

Siguiendo con el problema...

No consigo la forma de que emerge me baje el libphp5.so y ademas ya lo busque en mi sistema y no aparece :S !...

----------

## Stolz

¿instalaste PHP solo en modo cli (SAPI: cli) o también instalaste el módulo de apache (SAPI: apache2)?. Comprueba si dev-lang/php tiene activada la USE apache2. Si no la tiene es normal que no se te instale el módulo de Apache pues has desactivado el soporte de Apache en PHP. Si activaste la USE, ni idea de cual puede ser al causa.

----------

## JotaCE

 *Stolz wrote:*   

> ¿instalaste PHP solo en modo cli (SAPI: cli) o también instalaste el módulo de apache (SAPI: apache2)?. Comprueba si dev-lang/php tiene activada la USE apache2. Si no la tiene es normal que no se te instale el módulo de Apache pues has desactivado el soporte de Apache en PHP. Si activaste la USE, ni idea de cual puede ser al causa.

 

No seria ademas util cambiar al subperfil server, si esta tratando de montar un servidor?

----------

## Stolz

 *JotaCE wrote:*   

> No seria ademas util cambiar al subperfil server, si esta tratando de montar un servidor?

 

Si no sabes muy bien lo que haces desde luego, pero para cuando ya eres usuario de Gentoo por tiempo, me sigo quedando con el profile por defecto (ni desktop ni server).

----------

## Diabliyo

 *Stolz wrote:*   

> ¿instalaste PHP solo en modo cli (SAPI: cli) o también instalaste el módulo de apache (SAPI: apache2)?. Comprueba si dev-lang/php tiene activada la USE apache2. Si no la tiene es normal que no se te instale el módulo de Apache pues has desactivado el soporte de Apache en PHP. Si activaste la USE, ni idea de cual puede ser al causa.

 

Pues en mi /etc/make.conf, no tengo especificado nada de apache en la variable USE, solamente hice emerge apache y emerge php, y pues si tienes razon solo se bajo el cli, porke aparece asi:

```
shell# ls -l /etc/php/

cli-php/

shell# ls -l /etc/php/cli-php/

php.ini

ext/

ext-active/
```

Entonces debo editar /etc/make.conf y agregar: apache2 a la variable USE ??, y despues hacer emerge php ??....

----------

## lanshor

 *Diabliyo wrote:*   

> Entonces debo editar /etc/make.conf y agregar: apache2 a la variable USE ??, y despues hacer emerge php ??....

 

Tú lo has dicho.

También puedes añadir sólo la use para php:

```
echo "dev-lang/php apache2" >> /etc/portage/package.use
```

Además si añades la USE global, mejor que hagas "emerge --update --deep --newuse world" para recompilar todos los paquetes con soporte opcional para apache2.

----------

## Diabliyo

 *lanshor wrote:*   

> Tú lo has dicho.
> 
> También puedes añadir sólo la use para php:
> 
> ```
> ...

 

Hola:

lanshor, lo mismo de emerge --update --deep --newuse world se haria para que Apache pueda trabajar con MySQL ??.... Ya que, lo de PHP quedo solucionado con solamente editar /etc/make.conf y agregando "apache2" a la variables USE, pero no me habia percatado de que tengo el incomveniente de que Apache se configuro sin soporte para MySQL :'(.... Vaya, no puedo hacer con PHP lo siguiente:

```
<?php

$link= mysql_connect( "localhost", "miuser", "mipassword" );

myusql_close($link);

?>
```

Como error, PHP dice: "mysql_conncet() es una funcion no definida".

Para saber sobre la no configuracion de apache con mysql, solo hice esto:

```
<?php

echo phpfino();

?>
```

----------

## lanshor

En este caso es php el que trabaja con mysql, no apache; tendrías que añadir la use "mysql" al make.conf, o, de la misma forma que antes añadirla al package.use, lo editas a mano o haces:

```
echo "dev-lang/php mysql" >> /etc/portage/package.use
```

Esto último es lo "recomendable" si sólo vas usar mysql con php. Y después "emerge --update --deep --newuse world" para instalar todos los paquetes afectados por la nueva use y sus dependencias.

Saludos!

----------

