Obtener la ciudad del cliente en PHP

Hola Mundo:

Ya saben, estoy metiéndome poco a poco en desarrollo y les quiero compartir un trocito de código que utilicé en un proyecto.
El objetivo de este código  es obtener la ciudad del visitante a partir de la dirección IP.

 $ip = $_SERVER['REMOTE_ADDR'];
$url = "http://freegeoip.net/json/".$ip;
$data = file_get_contents($url);
$obj = json_decode($data);
$ciudad = $obj->city;

El codigo es sencillo. Obtiene un archivo JSON desde el servicio de Free Geo IP, lo procesa y almacena la ciudad en una variable.

Sencillo, ¿no?

Aumentar el tamaño de archivos de subida en PHP

Generalmente es un valor que está definido en 2MB por motivos varios: seguridad, carga del servidor, valor óptimo, etc.

Muchas aplicaciones, por ejemplo, phpMyAdmin hace uso de la subida de archivos para importar un archivo SQL. Puede darse el caso que sea un volcado completo de 400MB y la configuración de PHP no soporte el tamaño.

Para lograr esto hay que editar las siguientes lineas en el php.ini

upload_max_filesize
memory_limit
post_max_size

En estas tres líneas se debe asignar un valor según las necesidades.
Esto funciona tanto en cualquier servidor, ya sea una máquina con Windows, Linux, BSD o cualquier otro sistema.

Habilitar PHP para Apache en Red Hat Enterprise Linux

Linux Linux Linux Linux Linux Linux Linux Linux Linux Linux Linux Linux  …. Como en lo viejos tiempos jeje.

Pareciera como si fuera ayer las horas invertidas aprendiendo sobre la consola y la infinidades que se pueden lograr. Lo bueno, es que ahora en mi empleo actual tienen mucho fruto.

Hoy me tocó habilitar un servidor web sencillo para un cliente. Se necesitaba de Apache2 con soporte para PHP sobre un Red Hat Enterprise Linux.

Primero instalé lo necesario:

yum install httpd php

Después habilité el soporte para php desde /etc/httpd/httpd.conf  agregando esta línea en el archivo:

AddType application/x-httpd-php .php

Al final reinicé el servicio

service httpd restart

Para hacer una pruebita loca, cree un archivo llamado prueba.php en /var/www/html/
y el contenido del archivo es:

Y en el navegador se debe ver así:

phpinfo

 

En otras distros es mas simple 🙂