Intentare mostrarles todas las cosas que me pasan día a día en mis pruebas, en mi trabajo, etc.
domingo, 23 de octubre de 2011
Servidor Web con ip dinamica en uruguay.
Tengo un equipo que esta en mi casa, el cual tienen una aplicación web corriendo. Me conecto a Internet por ADSL, el cual cada 12 horas cambia la ip.
A la aplicación web, la quiero utilizar desde fuera, por Internet, pero ademas quiero que el dominio sea fácil y conocido, ademas que sea .com.uy.
Ahora voy a indicar paso a paso que es lo que tenemos que hacer para lograrlo.
1 - comprar un dominioo en Antel, para eso se conectan a antel.com.uy, y buscan la parte de solicitud de dominios. Yo en particular hice el pago por mi factura de teléfono, pero ven ahí las opciones que tienen.
2 - registrarse en dyndns o no-ip (son los 2 que yo conozco, en mi caso mi router acepta dyndns, así que me inclino por este), y configurar, ya se el equipo, o el router, para acceder a la maquina con un nombre pero hasta ahora fea, normalmente la gente de dyndns, deja el dominio con esa sigla.
3 - nos registramos en Cdmon (https://www.cdmon.com) con este dns publico vamos a redirigir nuestro dominio a dyndns.
Ahora ya estamos registrados en todo lo que necesitamos, ahora debemos de configurarlo.
Primero vamos al domino de antel, en la parte de administración, elegimos el dominio y ahora le decimos que vamos a delegar este a un dns (normalmente las empresas grandes tienen su servidor dns, en nuestro caso usaremso cdmon).
Luego antel nos pide 2 dominios, entonces lo que hacemos es ingresamos las 2 ip publicas de cdmon o el nombre (, 212.36.74.129, , 212.36.75.129)
Ahora ingresamos a cdmon, usamos la opcion redireccion por URL, configuramos el dns estatico, en direccion url ponemos la direccion del dyndns (en mi caso http://juegauruguay.dyndns-ip.com).
Con esto bastaria para que nuestra pagina web ya tenga un dominio "lindo".
La idea es que cualquier peticion a nuestrodominio.com.uy, se redirige a cdmon, este, lo rutea a dyndns, y dyndns con el servicio obtienen la ip de nuestro servidro (el cual varia cada n horas).
Con esto y luego de 1 o 2 dias, ya podriamos acceder a nuestro dominio.com.uy y nos mostrar la pagina web de nuestro servidor. Si son un poco detallistas, si posicionamos el mouse sobre un link, este muesta el link con la direccion de dyndns, no queda del todo lindo pero funciona, y no he podido hacer que no salga ese texto.
lunes, 1 de noviembre de 2010
Cambiar la cantidad de hilos de tomcat
Para agregar la cantidad de hilos que ejecuta tomcat se debe de modificar el archivo de configuración de server.xml, lo que hay que agregar o cambiar es en el connector de la aplicación (un ejemplo es el siguiente)
Connector port="8080" maxHttpHeaderSize="8192"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
connectionTimeout="20000" disableUploadTimeout="true"
lo que hay que modificar es maxThreads, poner la cantidad de hilos que se quiera tener.
miércoles, 21 de julio de 2010
Cambiar tiempo Sessiones tomcat
Por defecto están en 30 minutos, y si queremos cambiarlas a mas tiempo tenemos que dejarlo algo así:
--session-config--
--session-timeout--********--/session-timeout--
--/session-config--
Donde estan los ***** se debe de poner los minutos que queremos que estén vivas.
Deben de remplazar los "--" por un simbolo de mayor o de menor dependiendo si es al inicio de la palabra o al final de la palabra
sábado, 22 de mayo de 2010
Reload automatico de clases en tomcat
Para los desarrolladores estar bajando y subiendo el tomcat para que se actualicen las clases es un poco molesto, entonces tomcat provee de una configuración para no tener que bajar y subir, sino que solo al copiar las clases el solo se actualiza.
Tenemos que editar el archivo context.xml que se encuentra en la carpeta conf.
Buscamos el siguiente texto
context privileged="true"
Y lo cambiamos por este
context privileged="true" reloadable="true"
sábado, 15 de mayo de 2010
Configurar usuario y contra para admin de tomcat
Normalmente cuando instalamos un tomcat nuevo ya sea en Windows o Linux, normalmente instalamos el admin, bueno lo primero que intentamos es acceder para levantar, bajar o ver solamente las aplicaciones que tenemos, pero lo primero que nos pide es la contraseña, y tenemos que configurarla.
Esto es muy fácil, lo que hay que hacer es editar el archivo de TOMCATDIR/conf/tomcat-users.xml, donde tomcat dir es la raíz de donde está instalado tomcat, por ejemplo c:\tomcat o si es Linux /tomcat
Y lo que tenemos que configurar es el rol usuario y contra de manager, entonces debería de quedar algo asi (pueden haber mas líneas)
<?xml version='1.0' encoding='utf-8'?>
<tomcat-users>
<role rolename="manager"/>
<role rolename="admin"/>
<user username="admin" password="" roles="admin,manager"/>
</tomcat-users>
La líneas que tienen que agregar o editar son la 3ra y la 5ta, si se fijan para acceder al manager en este ejemplo usarían el usuario admin, y la contra vacía.
viernes, 4 de diciembre de 2009
Java, Tomcat, Cambio de hora
Se que el titulo no dice mucho, pero en Uruguay, se cambia el horario en el verano, entonces en algunas aplicaciones que corren bajo tomcat, este a veces se marea con la hora y cuando ponemos una fecha, el sistema solo cambia la fecha para un día antes.
Esto lo que hace es bastante complicado pero muy fácil de solucionar, lo que hay que decirle es al arrancar tomcat, exportar una variable que utiliza java.
Entones yo supongo que estamos en un servidor Linux, y que al arrancar tomcat que lo hacemos con un script de inicio en /etc/init.d, le pasamos unos parámetros para que la maquina virtual de java se levante con alguna memoria mínima, máxima, etc. Entonces lo que hacemos es lo siguiente
export JAVA_OPTS="-Xms512M -Xmx1200M -XX:MaxPermSize=384M -XX:PermSize=128M -Duser.timezone=GMT-03:00"
Lo que interesa para el cambio de día, es la ultima parte (-Duser.timezone=GMT-03:00) esto hay que configurarlo según la zona horaria.
Luego solo con reiniciar tomcat la aplicación ya no se "mareara"con la hora.
sábado, 19 de julio de 2008
Error en tomcat 6 con java 6
No se bien cual fue el problema, no lo investigue mucho tiempo, pero instale un windows XP de cero, luego instalar java, JRE 1.6.02 (también lo probé con 1.6.04), luego tomcat 6, y no arrancaba.
El error que salta es el siguiente
[2008-07-19 20:59:00] [986 prunsrv.c] [error] Failed creating java C:\Archivos de programa\Java\jre1.6.0_02\bin\client\jvm.dll
[2008-07-19 20:59:00] [1260 prunsrv.c] [error] ServiceStart returned 1
[2008-07-19 20:59:00] [info] Run service finished.
[2008-07-19 20:59:00] [info] Procrun finished.
[2008-07-19 21:08:09] [info] Procrun (2.0.3.0) started
[2008-07-19 21:08:09] [info] Running Service...
[2008-07-19 21:08:09] [info] Starting service...
[2008-07-19 21:08:09] [174 javajni.c] [error] No se puede encontrar el módulo especificado.
Luego buscando un poco en internet encontre lo siguiente
copiar el archivo msvcr71.dll de %java_home%/bin a window/system32
Y con esta simple solucion quedo todo andando.
viernes, 27 de junio de 2008
Tomcat sobre Linux
Bueno en esta oportunidad vamos a explicar como hacer para instalar Tomcat 6 en un Linux
Primero que nada hay que instalar java, en mi caso instala java 6.
Como la instalación fue bajo un Ubuntu-Server, lo que hago es lo siguiente
apt-get install sun-java6-jdk
Luego descargamos de la pagina de apache, la ultima versión de tomcat, y lo copiamos a alguna carpeta del Linux, y lo descomprimimos
tar -xvf apache...tar.gz
Luego lo copiamos al lugar donde nos guste tener el server en mi caso /softgxjava/tomcat
cp /carpeta donde descomprimimos/* /softgxjava/tomcat
luego lo que hacemos es crear el script para levantar el tomcat
entonces hacemos
vi /etc/init.d/tomcat6
y copiamos lo siguiente
#! /bin/sh
export JAVA_HOME="/softgxjava/java"
export JRE_HOME="/softgxjava/java"
export CATALINA_HOME="/softgxjava/tomcat"
export BASEDIR="/softgxjava/tomcat"
#export JAVA_OPTS="-Xms512M -Xmx1024M -Xss4M -Xloggc:/tmp/javalog.log -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:+PrintClassHistogram -XX:MaxPermSize=256m -Dorg.apache.lucene.mergeFactor=100 -Djava.awt.headless=true -Dfile.encoding=Cp1252"
start() {
echo -n "Starting service Tomcat... "
cd $CATALINA_HOME
$CATALINA_HOME/bin/startup.sh
echo "done"
}
stop() {
#$CATALINA_HOME/catalogos.sh
echo -n "Shutting down service Tomcat... "
$CATALINA_HOME/bin/shutdown.sh > /dev/null 2>/dev/null
echo "done"
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
*)
echo "Uso: $0 {start|stop|restart}"
exit 1
;;
esac
(en este script hay cosas que están de mas, pero las utilizo para otras cosas, por eso las dejo)
luego hacemos un link simbólico a la ruta donde tengamos instalado java
ln -s /ruta donde tenemos java /softgxjava/java
y listo con esto ya esta pronto ahora levantamos tomcat
/etc/init.d/tomcat start
y luego solo tenemos que probar que se levante tomcat
http://dir_ip:8080
si nos muestra la pagina vamos bien, ahora nos falta definir los roles en el tomcat y la contraseña para acceder el administrador, esto lo hacemos con el archivo
/softgxjava/tomcat/conf/tomcat-user.xml
y debe de quedar así
<?xml version='1.0' encoding='utf-8'?>
<tomcat-users>
<role rolename="tomcat"/>
<role rolename="role1"/>
<role rolename="manager"/>
<role rolename="admin"/>
<user username="tomcat" password="tomcat" roles="tomcat"/>
<user username="role1" password="tomcat" roles="role1"/>
<user username="both" password="tomcat" roles="tomcat,role1"/>
<user username="admin" password="" roles="admin,manager"/>
</tomcat-users>
ahora si con
/etc/init.d/tomcat restart
y listo ya podes empezar a trabajar con tomcat