Entradas

Mostrando las entradas etiquetadas como software

Servidores web para Windows

Imagen
Llevo ya muchos años trabajando con servidores web, de ellos bastante tiempo sobre Windows y es bastante complicado. Llegar a una configuración óptima en Windows solo puede ser con prueba y error, no hay una receta mágica que te lo permita, pero no por ello son malos servidores, en mi opinión creo que se han dejado de lado. Windows representa sólo el 32,2 % en los sistemas operativos que mantienen servidores web. ¿Por qué tan poca cuota? Para montar un servidor web bajo Windows sólo existen 2 excusas potentes: Trabajas con ASP Tu base de datos está en Microsoft SQL Server Para el punto 1 no hay alternativa posible, ASP necesita IIS y por ello Windows. Por el contrario el punto 2 es más susceptible a cambio (y más ahora con los nuevos desarrollos en los que la propia Microsoft está involucrada como el driver ODBC y la adaptación a Linux del propio SQL Server ). Para trabajar con SQL Server no es necesario ASP, puedes acceder desde PHP con ODBC, eso si...

Alta disponibilidad con un espejo en SQL Server

SQL Server tiene varias formas para que dispongamos de alta disponibilidad en nuestras bases de datos, en este post veremos una de ellas: la creación de un espejo. Para mi la creación de un espejo vs un clúster es una preferencia personal, creo que un clúster es más complejo de mantener y gestionar, es más caro porque ambas máquinas comparten el almacenamiento y por lo menos mi experiencia con SQL Server 2008 R2 no fue muy buena y sin un soporte premiun por parte de Microsoft los fallos son difícilmente corregibles. En cambio un mirror o espejo es sencillo de configurar y pueden ser dos máquinas totalmente independientes. ¿Por qué crear un espejo en SQL Server? Porque este método permite hacer una réplica exacta de una base de datos de un servidor a otro. La gran ventaja de este método es que permite el failover automático sin intervención humana (siempre que se instale un tercer servidor witness). La desventaja del mirror es que sólo podemos tener una máquina secundaria o mirro...

CentOS 7 reset root password MySQL 5.7

Si habéis llegado aquí estáis en el lugar correcto dónde podréis restaurar la contraseña de root en MySQL 5.7 . Internet está plagado de tutoriales dónde te indican cómo hacer esto pero ninguno está actualizado a las últimas versiones de CentOS y MySQL, además por todos es conocido que el soporte a MySQL por parte de la comunidad Open Source ha menguado desde su compra por Oracle. ¿Que cambia en CentOS 7 y MySQL 5.7? CentOS 7 incorpora systemd (Sistema y administrador de servicios para Linux, compatible con scripts de inicio SysV) y su herramienta de administración systemctl . ¿en que afecta esto? Pues que el script mysql_safe no está disponible (no se instala) en estos sistemas y hay que utilizar otras alternativas y gestionar mysql server community desde systemd . La tabla de usuarios en MySQL 5.7 ya no tiene campo password ahora es authentication_string. Restaurar contraseña root en MySQL 5.7 y CentOS 7 systemctl set-environment MYSQLD_OPTS="--skip-grant-...

Instalando SSMS 2016 CTP2 en Windows 10

Al descargar el instalador web del nuevo SQL Server Managment Studio 2016 y ejecutarlo en mi máquina con Windows 10 build 10158, me daba el siguiente error: Error 0x800713ec: Process returned error: 0x13ec Error 0x800713ec: Failed to execute EXE package. Error 0x800713ec: Failed to configure per-machine EXE package. Applied execute package: VS2010SP1Update, result: 0x800713ec, restart: None Error 0x800713ec: Failed to execute EXE package. Este error se produce porque SQL Server 2016 requiere Visual Studio 2010. Al instalarlo hay un error ( 0x800713ec – Asia ) cuando intenta instalar el SP1. El error se produce tanto con el instalador web como con la ISO completa. Es cierto que con el instalador web las pistas no son tan claras pero gracias a la ISO pude descargarme el SP1 de Visual Studio 2010   he instalarlo sin problemas. Si solo tienes SSMS puedes descargar la ISO completa (previo registro) y actualizar los componentes, mucho mejor que con el instalador web que sospecho...

SSMS ya tiene su propia ruta de actualizaciones

SQL Server 2016 ya está en la fase 2 de beta técnica y ha sido lanzado al público con una licencia de prueba de 180 días y cargado de novedades. Una de las más importantes, y sobre la que hablaré en este post, es la nueva ruta de actualizaciones que recibe SQL Server Management Studio (SSMS). Era ya muy necesario el proceso de modernización de SQL Server Management Studio como la principal aplicación / herramienta de gestión para interactuar con la plataforma insignia de base de datos de Microsoft, se había quedado a la zaga del resto de avances en el producto. Desde el año 2005 cuando se libera SSMS como la evolución de SQL Server Enterprise Manager solamente parecía actualizarse con el fin de proporcionar todas las funcionalidades añadidas como características a SQL Server. Finalmente comienza a parecer que el equipo de ingeniería de SQL Server ha hecho caso y ha comenzado a aumentar, no sólo los recursos y el personal de desarrollo necesarios, sino también proporcionar una ma...

Instalando ImageMagick con PHP y Windows

Imagen
En este tutorial veremos como instalar paso a paso el software ImageMagick en Windows y la librería de PHP asociada. Software de mi servidor Windows Server 2008 R2 Standard Español x64 SP1 XAMPP Version: 1.8.3 Apache x86 2.4.7 VC11 PHP 5.5.6 x86 TS VC11 Software a instalar ImageMagick-6.9.1-2-Q16-x86-dll php_imagick-3.3.0rc1-5.5-ts-vc11-x86 Enlaces de descarga para ImageMagick El software se puede descargar desde este enlace o desde la página oficial . Los drivers para PHP se pueden descargar también desde diferentes ubicaciones y en diferentes versiones, up opté por la última en el momento de crear el post la 3.3.0 RC1 , pero también es posible descargar la 3.2.0 RC1 o la versión estable 3.1.2 . Todas se pueden descargar desde la siguiente ruta alternativa . Instalación de ImageMagick con XAMPP Realmente lo de que sea sobre XAMPP da igual, lo único que tendríamos que buscar las rutas y directorios específicos de nuestra instalación de PHP. Instalación del soft...

Actualizando a Zend Studio 12.x

Imagen
Generalmente el paso de una actualización a otra en Zend Studio (ZS) es bastante trivial pero al actualizar de Zend Studio 11 a ZS 12 o ZS 12.5 me he encontrado con algunas dificultades, cambios de configuración que afectan las codificaciones de los archivos JavaScript y el uso del editor, sobre todo las teclas tab . Error de codificación de archivos JavaScript a UTF-8 en Zend Studio 12 En Zend Studio 11 para cambiar la codificación de un proyecto bastaba con hacer click derecho en el proyecto Properties > Resource y especificar allí nuestra configuración, pero el paso a la versión 12 que implica la actualización a Eclipse 4 ha cambiado el orden de prioridades de las codificaciones. Permítanme dar más detalles de cómo funciona. La codificación de un archivo de texto está determinada por las reglas siguientes: Si la codificación se encuentra justo en el archivo, entonces este es la codificación que se aplica, de lo contrario La codificación de archivos de texto se hereda de...

Firefox Error code: sec_error_unknown_issuer

Si cada vez que intentas acceder a una web con conexión segura SSL bajo https y te da el error This Connection is Untrusted es altamente probable que tu antivirus tenga algo que ver. En la siguiente imagen vemos el error al entrar acceder a la página principal de Facebook: es-es.facebook.com uses an invalid security certificate. The certificate is not trusted because no issuer chain was provided. (Error code: sec_error_unknown_issuer) Para corregir esto debemos ver el origen del error, el por qué. Pulsamos el botón para añadir una excepción que se encuentra debajo la parte inferior de la ventana al pulsar en entiendo los riesgos. En esta nueva ventana pulsaremos el botón para ver el certificado. Allí nos mostrará toda la información relacionada con el certificado de seguridad y podremos seguramente sacar el origen del error, en mi caso por ejemplo si. Lo que me llamó la atención es que estuviese el nombre de mi antivirus asociado al certificado con lo cual haciendo una b...

Nuevas funcionalidades en PHP 5.5

Una vez que hemos visto todas las ventajas que nos puede traer PHP 5.4 y sabiendo que esta no es la última versión estable sería interesante ver cuáles son las ventajas de esta para una vez decididos migrar optemos por una u otra. Generadores Una de las necesidades de programación más comunes, es ser capaz de realizar una acción sobre todos los elementos de un objeto. Por ejemplo, usando un foreach en una matriz, para obtener cada clave o, un foreach sobre un objeto, para obtener el nombre de cada parámetro y su valor. El mecanismo para la aplicación de este comportamiento es conocido como un iterador, que se utiliza para recorrer todos los elementos de un objeto o una matriz. Los iteradores se pueden definir de forma explícita con clases personalizadas, pero eso puede ser un proceso difícil de manejar y complejo, con apaños y, más que un puñado de funciones. ¿Qué pasa si quiero actuar en un subconjunto de una matriz, y realizar algo de lógica a medida que avanzo, pero aún así ser...

Elegir un editor para PHP

Imagen
Existen multitud de editores para lenguajes de programación , editores de texto sencillos y entornos de desarrollo integrado (IDE en sus siglas en inglés) tanto genéricos como específicos para PHP. Entre todos ¿cual elegir? Lamentablemente no hay una respuesta concreta, todo depende de las necesidades particulares de cada uno. En este post haré una breve guía de los entornos de desarrollo integrados tanto genéricos como específicos de PHP para determinar ¿que aspectos tendríamos que considerar para elegir uno u otro? La parte esencial de cualquier editor que vayamos a utilizar para PHP es que sea capaz de comprender la sintaxis de las diferentes versiones de archivos PHP (.php, .php3, .php4, .phtml, .php5), pero aparte de lo obvio sería esencial encontrar en este IDE: un editor de texto plano el manejo de la sintaxis de php con colores y dando formato a las funciones, variables, etc. la identificación de fragmentos de código PHP dentro de otros formatos como HTML. que sea c...

Eliminando directorios con LFTP

Imagen
Continuando el manual de opciones del LFTP os dejo la sintaxis completa para eliminar directorios de manera recursiva incluyendo archivos ocultos . La sintaxis para eliminar directorios de manera recursiva es: rm –r /directorio/directorio/directorio_a_borrar Pero si el directorio a borrar tuviese archivos ocultos tendríamos un error del tipo: rm: Access failed: 550 dirname: Directory not empty , por ello debemos incluir set ftp:list-options –a. Uniéndolo todo sería: lftp -c open ftp://user:passwd@host -e "set ftp:list-options -a; rm -r /directorio/directorio/directorio_a_borrar" & El símbolo final es para ejecutar el comando en segundo plano. Es totalmente opcional.

Windows 8.1 Update 1

Imagen
Ya Microsoft tiene la versión final de su primera actualización grande de Windows 8.1 , es una actualización importante pero no llega a ser un Service Pack. La actualización aún no está disponible desde Windows Update que es dónde se va a lanzar oficialmente, no desde la Windows Store como fue el caso de Windows 8.1, pero los enlaces estuvieron activos desde su sitio de descarga durante un tiempo limitado, el suficiente para que fueran descargadas las 6 actualizaciones necesarias y almacenadas por los usuarios en otros soportes de almacenamiento online. Aquí os dejo los enlaces de descarga de Windows 8.1 Update 1 para sistemas x64 y x32 . PD: todas las MSU para Windows 8.1 Update, según la fuente de los archivos, fueron sacadas directamente desde los servidores de Windows Update. Instrucciones para instalar Windows 8.1 Update 1 Son 6 las actualizaciones necesarias y deben instalarse en el siguiente orden: KB2919442 *KB2939087 KB2919355 KB2932046 *KB2938439 KB293759...

El entorno de trabajo ideal

Imagen
A la hora de diseñar y poner en producción un software lo ideal es contar con varios entornos de trabajo que nos faciliten la vida, dependiendo de cuales son nuestros requisitos estos entornos pueden ser más o menos, en potencia y en cantidad. A mi entender lo ideal son 4 entornos totalmente diferenciados: El entorno de producción: donde correrán nuestras aplicaciones y al que accederán todos los usuarios de las mismas. El entorno de desarrollo: una copia exacta del sistema operativo y los servidores donde trabajaremos con el código fuente y sobre el que haremos las modificaciones, actualizaciones y pruebas necesarias antes de pasarlo a producción. Un entorno de I+D+I, aquí probaremos nuevas versiones de sistemas operativos, de servidores, es un entorno más para probar todo lo que no depende de nosotros y que es utilizado por nuestro software. Un entorno de backup, exactamente igual al entorno de producción con copias habilitadas del contenido de este de manera periódica y co...

Opciones del LFTP

Unos de los gestores FTP más importantes de Linux es el LFTP, muy ligero y muy versátil y en las últimas versiones han mejorado muchísimo las opciones. He tenido que trabajar con el en un par de proyectos y aquí os dejo algunos comandos y opciones muy interesantes. Para crear un directorio solo si este no existe tenemos la opción mkdir –p /directorio. Tened en cuenta que si en la url del directorio hay subdirectorios, estos serán creados en caso de no existir. Para subir el contenido de un directorio entero tenemos la opción mirror, en la mayoría de artículos por internet utilizan esta opción para copias de seguridad con lo cual parecería que solo se pueda ejecutar este comando para sincronizar carpetas, lo cual no es el caso, por ejemplo si tienes las carpetas orígenes A, B, C y la de destino D, perfectamente puedes hacer esto: mirror –R A D mirror –R B D mirror –R C D Lo bueno de esto es que si volvemos a ejecutar uno de estos comandos solo se subirán los archivos nuevos o modif...