Solución Ubuntu 10.04 problema apache descagra php , usermod
Siempre es bueno documentar, si ya te haz dado cuenta de este problema que trae la última versión de ubuntu (ubuntu 10.04) y te haz googleado la solución y no la haz encontrado os dejo aqui el porblema que ocurre.
El problema
AL habilitar usermod bajo apache al intentar acceder a los ficheros php de la forma http://localhost/~knx/fichero.php en lugar de que apache intereprete el fichero te lanza una descarga, sin embargo al interpretar ficheros php que estan bajo /var/www de la forma http://localhost/fichero.php estos son interpretados de forma correcta.
La solución:
Comentar las lineas que se muestran EN NEGRITA
root@fenix2:/etc/apache2# sudo nano /etc/apache2/mods-available/php5.conf
<IfModule mod_php5.c>
<FilesMatch «\.ph(p3?|tml)$»>
SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch «\.phps$»>
SetHandler application/x-httpd-php-source
</FilesMatch>
# To re-enable php in user directories comment the following lines
# (from <IfModule …> to </IfModule>.) Do NOT set it to On as it
# prevents .htaccess files from disabling it.
# <IfModule mod_userdir.c>
# <Directory /home/*/public_html>
# php_admin_value engine Off
# </Directory>
# </IfModule>
</IfModule>
root@fenix2:/etc/apache2# service apache2 restart
Explicación :
Si sabes inglés habrás lanzado una carcajada To re-enable php in user directories comment the following lines (from <IfModule …> to </IfModule>.) Do NOT set it to On as it prevents .htaccess files from disabling it. , Para volver a habilitar php en directorios de usuario comentar las siguientes líneas (de <IfModule …> a> </ IfModule.) …. A mi no me preguntes porque .. salu2.
EL bonus track:
El problema:
Por alguna razón php bajo ubuntu 10.04 te ha lanzado un error asociado al caracter de comentario en agunos archivos (cambio de estándar)
knx@fenix2:~/public_html/psico$ ./symfony -V
PHP Deprecated: Comments starting with ‘#’ are deprecated in /etc/php5/cli/conf.d/imagick.ini on line 1 in Unknown on line 0
PHP Deprecated: Comments starting with ‘#’ are deprecated in /etc/php5/cli/conf.d/imap.ini on line 1 in Unknown on line 0
PHP Deprecated: Comments starting with ‘#’ are deprecated in /etc/php5/cli/conf.d/mcrypt.ini on line 1 in Unknown on line 0
symfony version 1.4.5 (/home/knx/public_html/Symfony/symfony-1.4.5/lib)
Solución: (aplica para otros ficheros)
sudo perl -p -i -e ‘s/#/;/g’ /etc/php5/cli/conf.d/imagick.ini
sudo perl -p -i -e ‘s/#/;/g’ /etc/php5/cli/conf.d/imap.ini
sudo perl -p -i -e ‘s/#/;/g’ /etc/php5/cli/conf.d/mcrypt.ini
Explicación:
A mi no me preguntes (cambio de estándar)
La solución de comentar esas lineas funciona bien. Lo único que puedo agregar es que tuve que:
1) descargar el módulo de userdir,
2) restartear el apache,
3) cargar el módulo userdir de nuevo y
4) restartear de nuevo.
Sólo después de eso anduvo (No bastó con el restart del apache sin descargar y cargar el módulo).
Buenas…
Disculpa por mencionarlo, pero tu solucion no es eficiente ni funcional, ya que realice lo que propones y el problema continua.
La Solucion ?
Es simple, solo debes crearte un Alias para tu account y ni siquiera necesitas comentar lo que menciona el autor.
Como ?
Aqui un ejemplo:
Alias /mi_username «/home/mi_username/public_html/»
Options FollowSymLinks
DirectoryIndex index.php
AddType application/x-httpd-php .php
php_flag magic_quotes_gpc Off
#php_flag track_vars On
php_flag register_globals Off
php_value include_path .
Despues desde el navegador (una vez reinicies apache2) accedes: http://localhost/mi_username/ y listo xD
Pues a mi me funciona impecable de la forma que he comentado, no se a cual de las dos soluciones te refieres con que no funciona.
En segundo lugar mi querido amigo yo claro que la forma que usted menciona funcionaría pero no es lo que se busca, el título dice que es para USERMOD, osea para los directorios publicos de usuarios, imagine usted que administra un servidor para el cual sus usuario no tienen acceso como root, la solución que usted plantea en inviable (para algo inventaron los directorios de usuarios en apache). Por lo demás no es una soluciòn que se me ocurriera a mi, es la oficial, lea los comentarios del fichero. saludos.
No puedo imaginar que atrocidad quedaría en un servidor usando la solución que usted plantea :S, quizá para su pc de escritorio funcionaría sin problemas pero no para un servidor de producción.