Tomando un curso me tome con una muy buena herramienta que se llama Djaneiro
https://github.com/squ1b3r/Djaneiro
Con esta herramienta se puede utilizar algo parecido al autocompletado por ejemplo se escribe la palabra model y seleccionado del listado que aparece [model Model] de forma automática nos coloca todo lo necesario para el modelo.
Para instalar dicho paquete podemos utilizar el administrador de paquetes del Sublime Text 2 en caso de que aún no tengas el instalador de paquetes activado en el sublime te sugiero esta liga:
http://www.vidaamarilla.com/2012/07/tutorial-para-sublime-text-2.html
(Revisa la sección que dice Instalar el Package Control)
Posteriormente presionamos Shift + Ctrl (o Cmd si es Mac) + P, aparecerá un listado posteriormente seleccionamos la opción que dice Install Package, aparecerá otro listado ahí tecleamos Djaneiro y lo seleccionamos del listado.
Una vez instalado, reiniciamos el Sublime y ahora podemos utilizar los shortcut que vienen listados en su sitio en github.
Nota: Una vez instalado Djaneiro ya no aparecerá en el listado.
Saludos espero te sea de utilidad.
domingo, 25 de noviembre de 2012
jueves, 18 de octubre de 2012
PHP has encountered an Access Violation at 00000000 openssl
Un amigo después de tener trabajando en un servidor una aplicación con manejo de openssl y php (para facturas electrónicas), el equipo falló entonces tuvo que mudarlo a otro servidor el cuál ya tenía instalado PHP pero al pasarlo al otro servidor nos topamos con el siguiente error:
- PHP has encountered an Access Violation at 00000000 -
Después de que estuvo revisando nos encontramos que el error se producía cuando trataba de ejecutar el comando openssl_sign() a pesar de que al correr un phpinfo parecía que todo estaba configurado correctamente (ya se imaginarán nuestra frustración sin poder generar facturas).
Tuvimos que hacer varias cosas para poder resolver este problema (quizá alla otras mejores pero esta fue la que nos funciono):
1 - Instalación del OpenSSL
La instalación del OpenSSL, no estaba funcionando, por lo que tuvimos que desinstalar por completo la aplicación y reinstalarla, en este sitio http://slproweb.com/products/Win32OpenSSL.html se puede descargar la versión que utilizamos fue la Win32 OpenSSL v0.9.8x.
2 - Hacer utilizando el comando directamente
Intentamos nuevamente utilizando el comando openssl_sign() pero siguió fallando, entonces cambiamos de utilizarlo de esa forma y mejor llamar directamente al comando utilizando shell_exec() pero el problema es que al ejecutar la instruccion openssl dgst ... etc., no pasaba absolutamente nada, no marcaba error ni tampoco existía alguna entrada en el log.
El problema eran dos cosas:
a) El comando que se debe utilizar para los ejecutables para tener un poco de control en el proceso es popen() aquí algo de info del comando: http://php.net/manual/es/function.popen.php .
La forma en que lo utilizamos fue:
------- error_reporting(E_ALL); $gestor = popen($ComandoOpenSSL.' 2>&1', 'r'); //Estos comandos son para depurar solamente // $leer = fread($gestor, 2096); // echo " --> contenido: $leer "; pclose($gestor); -----
b) Los permisos de usuario el shell_exec y el popen no funcionaban o no hacían nada debido a los permisos de usuario, la aplicación esta montada sobre un IIS por lo que era necesario darle permisos al usuario de invitado de internet, es decir al clásico IUSR_NOMBREEQUIPO para esto encontramos este sitio: http://www.somacon.com/p255.php.
Básicamente se trata que al archivo si al cmd.exe y al directorio c:\OpenSSL se le den permisos de lectura y ejecución al usuario IUSR_NOMBREEQUIPO es posible dependiendo de lo que haga su aplicación si requieren en uno u otro darle permiso de escritura.
Una vez realizado lo anterior por fin logramos reactivar el servicio :)
Espero te sea de utilidad.
Otras Referencias:
http://www.madboa.com/geek/openssl/
http://www.openssl.org/
http://www.php.net/manual/es/openssl.requirements.php
http://actron.wordpress.com/2010/11/16/facturacion-electronica-sello-openssl-php/
http://actron.wordpress.com/2010/11/18/facturacion-electronica-sello-php-y-openssl-mas-rapido/
- PHP has encountered an Access Violation at 00000000 -
Después de que estuvo revisando nos encontramos que el error se producía cuando trataba de ejecutar el comando openssl_sign() a pesar de que al correr un phpinfo parecía que todo estaba configurado correctamente (ya se imaginarán nuestra frustración sin poder generar facturas).
Tuvimos que hacer varias cosas para poder resolver este problema (quizá alla otras mejores pero esta fue la que nos funciono):
1 - Instalación del OpenSSL
La instalación del OpenSSL, no estaba funcionando, por lo que tuvimos que desinstalar por completo la aplicación y reinstalarla, en este sitio http://slproweb.com/products/Win32OpenSSL.html se puede descargar la versión que utilizamos fue la Win32 OpenSSL v0.9.8x.
2 - Hacer utilizando el comando directamente
Intentamos nuevamente utilizando el comando openssl_sign() pero siguió fallando, entonces cambiamos de utilizarlo de esa forma y mejor llamar directamente al comando utilizando shell_exec() pero el problema es que al ejecutar la instruccion openssl dgst ... etc., no pasaba absolutamente nada, no marcaba error ni tampoco existía alguna entrada en el log.
El problema eran dos cosas:
a) El comando que se debe utilizar para los ejecutables para tener un poco de control en el proceso es popen() aquí algo de info del comando: http://php.net/manual/es/function.popen.php .
La forma en que lo utilizamos fue:
------- error_reporting(E_ALL); $gestor = popen($ComandoOpenSSL.' 2>&1', 'r'); //Estos comandos son para depurar solamente // $leer = fread($gestor, 2096); // echo " --> contenido: $leer "; pclose($gestor); -----
b) Los permisos de usuario el shell_exec y el popen no funcionaban o no hacían nada debido a los permisos de usuario, la aplicación esta montada sobre un IIS por lo que era necesario darle permisos al usuario de invitado de internet, es decir al clásico IUSR_NOMBREEQUIPO para esto encontramos este sitio: http://www.somacon.com/p255.php.
Básicamente se trata que al archivo si al cmd.exe y al directorio c:\OpenSSL se le den permisos de lectura y ejecución al usuario IUSR_NOMBREEQUIPO es posible dependiendo de lo que haga su aplicación si requieren en uno u otro darle permiso de escritura.
Una vez realizado lo anterior por fin logramos reactivar el servicio :)
Espero te sea de utilidad.
Otras Referencias:
http://www.madboa.com/geek/openssl/
http://www.openssl.org/
http://www.php.net/manual/es/openssl.requirements.php
http://actron.wordpress.com/2010/11/16/facturacion-electronica-sello-openssl-php/
http://actron.wordpress.com/2010/11/18/facturacion-electronica-sello-php-y-openssl-mas-rapido/
miércoles, 17 de octubre de 2012
Python :: Obtener de la Fecha Actual el Día, Mes y Año
El manejo de Fechas en Python considero es de lo más sencillo por lo pronto he necesitado saber el día, mes y año.
Es muy simple aquí el código:
dimefecha.py
__________________________
# -*- coding: utf8 -*-
from datetime import date
d = date.today()
print "Día: ",d.day
print "Mes: ",d.month
print "Año: ",d.year
__________________________
NOTA: La parte que tiene # -*- coding: utf8 -*- es para que acepte caracteres especiales en UTF-8 como acentos y ñ.
Genial así de simple, dejo algo más de info, ojalá te sea de utilidad.
Referencias:
http://docs.python.org/library/datetime.html
http://effbot.org/librarybook/datetime.htm
http://stackoverflow.com/questions/6289474/working-with-utf-8-encoding-in-python-source
Es muy simple aquí el código:
dimefecha.py
__________________________
# -*- coding: utf8 -*-
from datetime import date
d = date.today()
print "Día: ",d.day
print "Mes: ",d.month
print "Año: ",d.year
__________________________
NOTA: La parte que tiene # -*- coding: utf8 -*- es para que acepte caracteres especiales en UTF-8 como acentos y ñ.
Genial así de simple, dejo algo más de info, ojalá te sea de utilidad.
Referencias:
http://docs.python.org/library/datetime.html
http://effbot.org/librarybook/datetime.htm
http://stackoverflow.com/questions/6289474/working-with-utf-8-encoding-in-python-source
martes, 9 de octubre de 2012
Django + GraphViz + Mountain Lion
GraphViz es una herramienta muy útil para generar automáticamente diagramas UML de las clases que se tienen en un proyecto, tuve algunos detalles para instalarlos en Mountain Lion, y al final los pasos se resumen en lo siguiente:
- Instalar Django-Extensions utilizando el siguiente comando:
- $ sudo easy_install django-extensions
- Más información en caso de problemas aquí:
- Instalar GraphViz la herramienta que nos permitirá ver los diagramas, el cuál se puede descargar desde aquí: http://www.graphviz.org/Download_macos.php
- En mi caso descargue la versión: graphviz-2.29.20121009.0445.pkg, que esta en el área de desarrollo.
- Posteriormente es necesario instalar PyGraphViz que es la herramienta que enlaza a Python con GraphViz aquí fue donde tuve algunos detalles, por lo que tuve que descargarlo utilizando el siguiente comando:
- $sudo svn co https://networkx.lanl.gov/svn/pygraphviz/trunk pygraphviz
- Con lo anterior se creará un directorio en el equipo es importante que modifiques los permisos al directorio como lectura y escritura.
- Posteriormente modificar el archivo setup.py, esto es las líneas:
# OSX, Linux, alternate location
library_path='/usr/local/lib/graphviz'
include_path='/usr/local/include/graphviz'
NOTA: Se debe quitar el # para descomentar, una vez realizado esto guardar el archivo.
- Posteriormente ejecutar el siguiente comando:
- $ python setup.py build
- Y Finalmente utilizar:
- $ python setup.py install
$ python manage.py graph_models --all-applications -g --output=miproyecto_uml.dot
Una vez ejecutado el comando se generará el archivo miproyecto_uml.dot que se puede abrir con el programa GraphViz que quedo instalado en el segundo paso.
Con la siguiente instrucción solo realizará el diagrama de la aplicación miaplicacion:
$ python manage.py graph_models miaplicacion -g -o miaplicacion_uml.dot
Con la siguiente instrucción solo realizará el diagrama de la aplicación miaplicacion:
$ python manage.py graph_models miaplicacion -g -o miaplicacion_uml.dot
Utilizando $ python manage.py graph_models --help se puede ver un listado de comandos que se pueden utilizar.
Saludos y espero te sea de utilidad.
jueves, 4 de octubre de 2012
Python y MySQL en OS X Mountain Lion
Primero debe descargar el MySQL para Mac e instalarlo.
Posteriormente deberá descargar la utilidad de http://sourceforge.net/projects/mysql-python/, también para los amantes de la terminal pueden utilizar los siguientes comandos:
$ wget http://superb-dca2.dl.sourceforge.net/project/mysql-python/mysql-python-test/1.2.4b4/MySQL-python-1.2.4b4.tar.gz
$ tar -xf MySQL-python-1.2.4b4.tar.gz
Una vez desempaquetado el archivo se debe editar el archivo de nombre site.cfg ubicando la línea que dice:
#mysql_config = /usr/local/bin/mysql_config
por:
mysql_config = /usr/local/mysql/bin/mysql_config
Es importante quitar el símbolo # para que deje de ser comentario y por otro lado verificar que el archivo mysql_config se encuentre en ese directorio como en mi caso. Una vez realizado lo anterior ahora se procede a correr el comando:
$ sudo python setup.py build
Si no marco ningún warning o algún error quiere decir que vamos bien, ahora ejecutamos el siguiente comando:
$ sudo python setup.py install
Finalmente corremos el siguiente comando:
$ sudo ln -s /usr/local/mysql/lib/libmysqlclient.18.dylib /usr/lib/libmysqlclient.18.dylib
Este último comando debe arreglar un problema que se genera al querer utilizar la librería MySQLdb.
-----------
Traceback (most recent call last):
File "", line 1, in
File "/Library/Python/2.7/site-packages/MySQL_python-1.2.4b4-py2.7-macosx-10.8-intel.egg/MySQLdb/__init__.py", line 19, in
import _mysql
ImportError: dlopen(/Library/Python/2.7/site-packages/MySQL_python-1.2.4b4-py2.7-macosx-10.8-intel.egg/_mysql.so, 2): Library not loaded: libmysqlclient.18.dylib Referenced
Referenced from: /Library/Python/2.7/site-packages/MySQL_python-1.2.4b4-py2.7-macosx-10.8-intel.egg/_mysql.so Reason
Reason: image not found
En este sitio fue donde encontre como arreglarlo:
(http://stackoverflow.com/questions/13440147/mysqldb-for-python-2-7-on-osx-10-8-2-and-both-are-64-bit)
-----------
Para ver si quedo bien podemos entrar nuevamente a la consola de python con el comando $ python, y luego teclear:
>>> import MySQLdb
Si no aparecen errores entonces quedo listo !
Espero te sea de utilidad.
Referencias:
http://luauf.com/2008/04/24/conectar-python-con-mysql/
https://groups.google.com/forum/?fromgroups=#!topic/django-es/_NRYFHVSgtA
http://nisthaonweb.com/blog/2012/02/setting-up-django-with-mysql-with-and-without-mamp/
NOTA:
Este post fue modificado el 17/01/2013 debido a que si se utilizaba la línea
export DYLD_LIBRARY_PATH=/usr/local/mysql/lib:$DYLD_LIBRARY_PATH
Se generaba un error en OSX ML con la siguiente leyenda:
dyld: DYLD_ environment variables being ignored because main executable (/usr/bin/sudo) is setuid or setgid
Posteriormente deberá descargar la utilidad de http://sourceforge.net/projects/mysql-python/, también para los amantes de la terminal pueden utilizar los siguientes comandos:
$ wget http://superb-dca2.dl.sourceforge.net/project/mysql-python/mysql-python-test/1.2.4b4/MySQL-python-1.2.4b4.tar.gz
$ tar -xf MySQL-python-1.2.4b4.tar.gz
Una vez desempaquetado el archivo se debe editar el archivo de nombre site.cfg ubicando la línea que dice:
#mysql_config = /usr/local/bin/mysql_config
por:
mysql_config = /usr/local/mysql/bin/mysql_config
Es importante quitar el símbolo # para que deje de ser comentario y por otro lado verificar que el archivo mysql_config se encuentre en ese directorio como en mi caso. Una vez realizado lo anterior ahora se procede a correr el comando:
$ sudo python setup.py build
Si no marco ningún warning o algún error quiere decir que vamos bien, ahora ejecutamos el siguiente comando:
$ sudo python setup.py install
Finalmente corremos el siguiente comando:
$ sudo ln -s /usr/local/mysql/lib/libmysqlclient.18.dylib /usr/lib/libmysqlclient.18.dylib
Este último comando debe arreglar un problema que se genera al querer utilizar la librería MySQLdb.
-----------
Traceback (most recent call last):
File "
File "/Library/Python/2.7/site-packages/MySQL_python-1.2.4b4-py2.7-macosx-10.8-intel.egg/MySQLdb/__init__.py", line 19, in
import _mysql
ImportError: dlopen(/Library/Python/2.7/site-packages/MySQL_python-1.2.4b4-py2.7-macosx-10.8-intel.egg/_mysql.so, 2): Library not loaded: libmysqlclient.18.dylib Referenced
Referenced from: /Library/Python/2.7/site-packages/MySQL_python-1.2.4b4-py2.7-macosx-10.8-intel.egg/_mysql.so Reason
Reason: image not found
En este sitio fue donde encontre como arreglarlo:
(http://stackoverflow.com/questions/13440147/mysqldb-for-python-2-7-on-osx-10-8-2-and-both-are-64-bit)
-----------
Para ver si quedo bien podemos entrar nuevamente a la consola de python con el comando $ python, y luego teclear:
>>> import MySQLdb
Si no aparecen errores entonces quedo listo !
Espero te sea de utilidad.
Referencias:
http://luauf.com/2008/04/24/conectar-python-con-mysql/
https://groups.google.com/forum/?fromgroups=#!topic/django-es/_NRYFHVSgtA
http://nisthaonweb.com/blog/2012/02/setting-up-django-with-mysql-with-and-without-mamp/
NOTA:
Este post fue modificado el 17/01/2013 debido a que si se utilizaba la línea
export DYLD_LIBRARY_PATH=/usr/local/
Se generaba un error en OSX ML con la siguiente leyenda:
dyld: DYLD_ environment variables being ignored because main executable (/usr/bin/sudo) is setuid or setgid
martes, 2 de octubre de 2012
Firebird campos multivalorados o con multivalores (multivalue) combinado con case
El día de hoy me enfrente al detalle de obtener un reporte con multi-valores, esto es en una fila colocar los datos de una tabla y posteriormente en una sola celda aparezcan datos de otra tabla donde esta vinculada del tipo foreign key, dejo aqui la consulta para que sirva de referencia...
select
factura, fecha,
case motivoservicio
when 1 then 'Falla en Software'
when 2 then 'Garantía'
when 3 then 'Mantenimiento Preventivo'
end as servicio,
(select nombre from sucursales where CLAVE=r.clave) as sucursal,
(select list(case id_tipo
when 1 then 'Reinstalación'
when 2 then 'Virus'
when 3 then 'Configuración'
when 4 then 'Otro'
end,' / ')
from tipos_soporte a
where r.factura = a.factura group by a.factura) as soporte,
from registro_servicios r
where
cancelado = 0 and
fecha = '2012-10-02'
Esto producirá un resultado como el siguiente:
factura | fecha | servicio | sucursal | soporte |
10291 | 2012-10-02 | Falla en Software | Vallarta | Reinstalación / Virus |
10292 | 2012-10-02 | Falla en Software | Vallarta | Virus / Configuración |
10301 | 2012-10-02 | Garantía | Cihuatlán | Otro |
10306 | 2012-10-02 | Garantía | Guadalajara | Virus |
Es importante hacer mención que esta consulta será compatible con firebird versión 2.1 en delante, por el uso de LIST().
Espero les sea de utilidad.
Referencias:
http://www.janus-software.com/fbmanual/manual.php?book=psql&topic=56
http://www.developeando.com/2009/02/firebird-21-list-function.html
http://www.firebirdsql.org/refdocs/langrefupd20-select.html#langrefupd20-aggregates
http://www.firebirdsql.org/file/documentation/reference_manuals/user_manuals/html/migration-mssql-syntax.html
http://www.firebirdsql.org/manual/nullguide-aggrfunc.html
sábado, 15 de septiembre de 2012
Modelos de Django a UML
Una vez que inicie a trabajar con Django me gusto mucho la facilidad con la que se puede iniciar a trabajar con los modelos, sin embargo, cambie mucho de mi diagrama de base de datos inicial a lo que quedo implementado por lo que necesitaba una herramienta para poder pasar los modelos a un diagrama inicie trabajando con models.app y también con freemind.app pero me di cuenta que necesitaba algo más ágil.
Buscando en internet me tope con que hay una librería de extensiones para Django en el siguiente sitio:
http://code.google.com/p/django-command-extensions/
Dicha librería se puede instalar siguiendo estas instrucciones:
http://code.google.com/p/django-command-extensions/wiki/InstallationInstructions
Una vez realizada la instalación, se puede ejecutar el siguiente comando:
$ python manage.py graph_models -a > ihospital.dot
Posteriormente descargue este software que permite ver este tipo de archivos:
http://www.graphviz.org
Una vez descargado e instalado, abri el archivo .dot y me construyo el diagrama automáticamente, es genial esta automatización de Django.
Saludos espero te sirva ...
Buscando en internet me tope con que hay una librería de extensiones para Django en el siguiente sitio:
http://code.google.com/p/django-command-extensions/
Dicha librería se puede instalar siguiendo estas instrucciones:
http://code.google.com/p/django-command-extensions/wiki/InstallationInstructions
Una vez realizada la instalación, se puede ejecutar el siguiente comando:
$ python manage.py graph_models -a > ihospital.dot
Posteriormente descargue este software que permite ver este tipo de archivos:
http://www.graphviz.org
Una vez descargado e instalado, abri el archivo .dot y me construyo el diagrama automáticamente, es genial esta automatización de Django.
Saludos espero te sirva ...
Tips TextMate Transparente tm_properties etc.
Es muy interesante que ahora TextMate se haya convertido en OpenSource: https://github.com/textmate/textmate/downloads , aunque algunos auguran su caída considero que esta estrategia lo hará más fuerte, aquí voy a ir dejando algunos tips para utilizarlo.
Fondo Transparente
Lo primero que no encontré, fue, como poder hacer el fondo transparente, lo cuál es una de las características que más me gusta en este editor, para lograrlo realice lo siguiente:
- Clic en Bundles -> Edit Bundles
- Posteriormente localizar la sección que dice Themes.
- Y en la siguiente columna localizar nuevamente Themes.
- En mi caso me gusta el tema Cobalt por lo que al hacer clic sobre el aparecerá el archivo de configuración en la parte inferior.
- Dentro de las primeras líneas (en mi caso la línea 4) existe un parametro que dice background el cuál esta en formato RGB con números hexadecimales, aparecerá algo como '#001130', al final podemos añadir dos digitos más que nos permitirán controlar el nivel de transparencia, en mi caso agregue cb y con esto logre una transparencia excelente para mi uso, esto es quedo así: background = '#001130cb';
tm_propiertes
En este caso se debe configurar el archivo .tm_properties para lograrlo dentro del File Browser encontramos un icono de forma de engrane, cuando se hace clic aparece un menú que al final tiene la opción: Preferences ...
Cuando se hace clic abre el archivo .tm_properties (es probable que se encuentre en blanco), dentro este archivo vamos añadir la siguiente línea, de acuerdo a lo que necesitemos:
# Tamaño de Fuente por Omisión
fontSize = 15
# En el título de la ventana colocará la ruta completa del archivo abierto
windowTitle = "$TM_DISPLAYNAME${TM_DIRECTORY/\A(?:\/Users\/username\w+\/?(.*)|(.+))\z/${2:? – ${2/\A\/Users\/username/~/}:${1/\A(?=.)/ – /}}/}"
Nuevas Características Geniales
Algo que me gusto mucho es que desde TextMate->Preferences ahora ya se puede configurar que al inicio (At startup) no abrá los documentos de la última sesión.
Así como también dentro de la sección Projects si se selecciona la opción Placement: Right side se puede poner la barra de File Browser del lado derecho, lo cuál para mi es muy útil ya que prefiero navegar entre archivos utilizando ⌘T.
Deshabilitar Suavizado de las Fuentes
En el terminal ejecutar el siguiente comando:
$ defaults write com.macromates.TextMate.preview disableAntiAlias -bool YES
Continuará ...
Fuentes:
viernes, 31 de agosto de 2012
Error en Django 1.4 Mac OSX al crear el superuser o super usuario (Solucionado)
Al querer crear el súper usuario de Django 1.4 en Mac OSX genera una serie de errores:
File "manage.py", line 10, in
…
ValueError: unknown locale: UTF-8
…
El error tiene que ver con sistema de codificación que esta configurado en Python, al correr el comando:
$ locale -a
Da por resultado las codificaciones disponibles en el equipo …
af_ZA
af_ZA.ISO8859-1
…
es_ES.UTF-8
…
En mi caso particular de interés lo configure con: 'es_ES.UTF-8', entonces lo que se debe hacer, es editar el archivo: ~/.bash_profile ; yo utilice TextMate desde la línea de comandos de la siguiente forma:
$mate ~/.bash_profile
Sin embargo puede utilizarse cualquier otro editor de texto como Sublime Text o Coda por ejemplo.
Dentro de este archivo se debe colocar lo siguiente:
export LANG="es_ES.UTF-8"
export LC_COLLATE="es_ES.UTF-8"
export LC_CTYPE="es_ES.UTF-8"
export LC_MESSAGES="es_ES.UTF-8"
export LC_MONETARY="es_ES.UTF-8"
export LC_NUMERIC="es_ES.UTF-8"
export LC_TIME="es_ES.UTF-8"
export LC_ALL=
Es probable que en el archivo ya se tengan más cosas por lo que podemos dejarlo al final.
Posteriormente al reiniciar el Terminal. Para corroborar que Python ya este utilizando la configuración deseada realizamos lo siguiente:
$Python
Python 2.7.1 …
....
>>> import locale
>>> print(locale.getdefaultlocale());
('es_ES','UTF8')
Con lo anterior quiere decir que la configuración ha sido correcta ahora intentamos nuevamente crear el súper usuario en Django.
Si la creación de tablas no tuvo ningún problema al correr el syncdb entonces se puede utilizar el comando:
$ Python manage.py createsuperuser
Espero les sea de utilidad …
Referencia:
lunes, 13 de agosto de 2012
WAMP Permitir Acceso Remoto de Otros Equipos Apache
Hace unos días instalé WAMP y no podía navegar desde otros equipos a mi maquina marcaba algo como que no había permiso para ver la página, entonces buscando en internet me tope con que el WAMP por omisión se instala con el acceso bloqueado y realice lo siguiente cambiar el archivo httpd.conf esto es buscar la siguientes líneas:
Options Indexes FollowSymLinks
AllowOverride all
Order Deny,Allow
Deny from all
Allow from 127.0.0.1
Cambiar por:
Options Indexes FollowSymLinks
AllowOverride all
Order Deny,Allow
Allow from all
Allow from 127.0.0.1
Espero te sea de utilidad...
Salu2
Fuentes:
http://kosiara87.blogspot.mx/2011/03/allow-remote-access-to-apache-on-wamp.html
Options Indexes FollowSymLinks
AllowOverride all
Order Deny,Allow
Deny from all
Allow from 127.0.0.1
Cambiar por:
Options Indexes FollowSymLinks
AllowOverride all
Order Deny,Allow
Allow from all
Allow from 127.0.0.1
Espero te sea de utilidad...
Salu2
Fuentes:
http://kosiara87.blogspot.mx/2011/03/allow-remote-access-to-apache-on-wamp.html
viernes, 3 de agosto de 2012
Papelera Mac OS X: Borrar archivos por separado, o bien eliminar o vaciar papeleras dificiles
Hace poco me entro la inquietud de eliminar un archivo por separado de la papelera y después de varias búsquedas encontré que es muy sencillo desde el terminal:
- Entrar al terminal de Mac OSX
- Una vez en el prompt teclear: sudo rm -rf
- Dejar un espacio en blanco, después de rf.
- Ahora abrir la Papelera y seleccionar los archivos que queramos borrar, aquí viene la magia, arrastrar esos archivos al terminal, y automáticamente serán capturados en él, junto con su ruta completa. Por ejemplo con un solo archivo podría quedar de la siguiente manera:
- $ sudo rm -rf /Users/omendoza/.Trash/Archivo\ 2.0.3.ipa
- Presionar Enter y con esto los archivos serán eliminados.
Espero les sea de utilidad.
LinkSys Router: mis equipos no se ven entre si, no hacen ping.
Tuve un problema con un Linksys WRT320N en el cual no podía hacer ping entre equipos si estaban conectados al ruteador de forma inalámbrica, es decir no se veían entre si en la red ...
Revise Firewalls, los desactive los reactive y nada (tanto del sistema operativo como del ruteador), hasta que al final buscando en internet encontré este sitio: http://forums.cabling-design.com/wireless/problem-pinging-between-PC-es-connected-to-Linksys-WRT54GS-r-13403-.htm donde aparece un post de Jeff Liebermann donde el explica lo siguiente:
Los ruteadores Linksys tienen una utilería que le llaman "AP Isolation" la intención de esta opción es prevenir ataques entre usuarios que se encuentran conectados a la misma red inalámbrica, esta opción puede ser muy útil en un café de internet, o lugares públicos, pero en una red local quizá ya no lo sea, por que impide la comunicación entre los ordenadores conectados.
Para arreglar el problema accedí a la opción Wireless y después en la sección que dice Advanced Wireless Settings, y dentro de esta sección apareció dicha opción AP Isolation la cuál la fije como Disabled y listo ahora ya puedo hacer ping entre equipos, por lo que puedo utilizar mis aplicaciones TCP/IP entre equipos.
Espero te sea de utilidad ... Gracias !
Revise Firewalls, los desactive los reactive y nada (tanto del sistema operativo como del ruteador), hasta que al final buscando en internet encontré este sitio: http://forums.cabling-design.com/wireless/problem-pinging-between-PC-es-connected-to-Linksys-WRT54GS-r-13403-.htm donde aparece un post de Jeff Liebermann donde el explica lo siguiente:
Los ruteadores Linksys tienen una utilería que le llaman "AP Isolation" la intención de esta opción es prevenir ataques entre usuarios que se encuentran conectados a la misma red inalámbrica, esta opción puede ser muy útil en un café de internet, o lugares públicos, pero en una red local quizá ya no lo sea, por que impide la comunicación entre los ordenadores conectados.
Para arreglar el problema accedí a la opción Wireless y después en la sección que dice Advanced Wireless Settings, y dentro de esta sección apareció dicha opción AP Isolation la cuál la fije como Disabled y listo ahora ya puedo hacer ping entre equipos, por lo que puedo utilizar mis aplicaciones TCP/IP entre equipos.
Espero te sea de utilidad ... Gracias !
lunes, 9 de julio de 2012
Comando tree para el terminal de OSX
Instalar el comando Tree en Mac OSX:
http://shaunchapman.me/post/329270449/how-to-install-the-tree-command-on-mac-os-x
Concatenar Cadenas en Firebird e Interbase
Hace unos días estuve buscando información de como concatenar en Firebird, la forma de hacerlo es utilizando los caracteres ||, les dejo aquí un ejemplo:
select nombre||' '||apellidos, domicilio
from personas
Con lo anterior el sistema debe concatenar el nombre con un espacio en blanco y luego los apellidos, en otra columna aparecerá el domicilio.
Espero sea de utilidad !
select nombre||' '||apellidos, domicilio
from personas
Con lo anterior el sistema debe concatenar el nombre con un espacio en blanco y luego los apellidos, en otra columna aparecerá el domicilio.
Espero sea de utilidad !
lunes, 4 de junio de 2012
Google Drive: The installer encountered error 1603: Fatal error during installation (Solucionado)
Me tope con este error 1603 al querer instalar Google Drive en un equipo con windows 2003 server. Lo solucione siguiendo el link que menciono abajo haciendo lo siguiente:
FUENTE:
https://productforums.google.com/forum/#!searchin/drive/1603/drive/v-XmaYzutP0/ARJlXDWLXdUJ
- Descargar e Instalar el Microsoft Visual C++ 2008 SP1 Redistributable Package desde el sitio: http://www.microsoft.com/downloads/es-es/details.aspx?familyid=a5c84275-3b97-4ab7-a40d-3802b2af5fc2 ojo nada más el idioma del sistema operativo.
- Una vez realizado lo anterior es volver a intentar instalar el Google Drive y con eso funciono correctamente.
Saludos y espero les sea de utilidad.
FUENTE:
https://productforums.google.com/forum/#!searchin/drive/1603/drive/v-XmaYzutP0/ARJlXDWLXdUJ
martes, 20 de marzo de 2012
Comandos en Terminal Mac OSX
Me tope con un excelente sitio dónde se listan los comandos para el terminal del Mac OSX:
http://ss64.com/osx/
Espero les sea útil ...
http://ss64.com/osx/
Espero les sea útil ...
domingo, 19 de febrero de 2012
Problemas Tomcat Encoding o Acentos y ñ
Recientemente tuve un problema con tomcat 6 que por alguna razón no reconocía los acentos que provenían del request, curiosamente con Glass Fish no tenía problemas buscando información en la red me tope con que tenia que agregar el atributo URIEncoding="UTF-8" en el tag Conector del archivo:
/Tomcat 6.0/conf/server.xml
< Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" URIEncoding="UTF-8" / >
Con lo anterior ya no tuve problema con la codificación de acentos y ñ.
Fuente:
http://stackoverflow.com/questions/138948/how-to-get-utf-8-working-in-java-webapps
/Tomcat 6.0/conf/server.xml
< Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" URIEncoding="UTF-8" / >
Con lo anterior ya no tuve problema con la codificación de acentos y ñ.
Fuente:
http://stackoverflow.com/questions/138948/how-to-get-utf-8-working-in-java-webapps
martes, 17 de enero de 2012
No abre ContPAQi Nóminas (solucionado)
Recientemente donde trabajo tuvimos un problema con el contpaqi nominas en un equipo no lo abría simplemente no lo abría, probé con la configuración del antivirus añadiendo excepciones y también con DEP (Prevención de Ejecución de Datos) y no funcionaba.
Hasta que me tope con una solución entrar al directorio:
{Program files}\compac\bin\
Y renombrar el archivo:
nomconexion.exe por nomconexion_.exe
Posteriormente intente entrar y funciono les paso el tip por si tienen el mismo problema.
Hasta que me tope con una solución entrar al directorio:
{Program files}\compac\bin\
Y renombrar el archivo:
nomconexion.exe por nomconexion_.exe
Posteriormente intente entrar y funciono les paso el tip por si tienen el mismo problema.
Suscribirse a:
Entradas (Atom)