WordPress local en macOS con Local

Local de Flywheel: la forma más sencilla de instalar WordPress en modo local en macOS. Cómo utilizar HTTPS (SSL) en el sitio local configurando un certificado válido tanto para Safari como para Chrome.

La compañía Flywheel ofrece alojamiento web específicamente diseñado para WordPress (WP en adelante) con diferentes planes, desde sitios sencillos para blogs personales o pequeños negocios hasta sitios complejos que requieren tráfico intenso, diferentes instalaciones de WP y tiendas online.

Flywheel también ofrece a la comunidad una herramienta gratuita llamada Local, disponible para macOS, Windows y Linux, que actualmente se ha convertido en la manera más sencilla de instalar un servidor local con WP en nuestro ordenador. Yo he descargado la versión Local Lightning 5.2.5 que actualmente es la más reciente disponible.

Continuar leyendo «WordPress local en macOS con Local»

Instalar wget de GNU Linux en macOS

Instalar en macOS High Sierra, desde el código fuente, openssl y la herramienta wget de GNU Linux. Utilizar wget para descargar a nuestro ordenador una copia estática de un sitio web remoto.

Nota previa: para compilar e instalar aplicaciones desde su código fuente en macOS es necesario disponer de las Command Line Tools (CLT) correspondientes a la versión del sistema. Si tienes Xcode instalado, ya las tienes. En caso contrario puedes instalarlas de 2 maneras diferentes:

  • Abre Terminal y teclea uno de los comandos que están incluidos en esas herramientas, por ejemplo gcc, y se abrirá una ventana de alerta con 3 opciones: instalar las CLT, instalar Xcode completo (no es necesario) o no instalar por ahora.
  • Descarga directa desde la web de Apple, elige la versión de las CLT correspondiente a tu versión de macOS.

Instalar wget compilando el código fuente

En primer lugar hay que instalar la versión más reciente de openssl que en el momento de escribir este artículo es openssl-1.1.1f. Se descarga con curl y se instala con los comandos habituales. Openssl es necesario si wget tiene que acceder a sitios seguros.

Continuar leyendo «Instalar wget de GNU Linux en macOS»

Instalar PHP en IIS de Windows 10

Configurar el servidor web Internet Information Services (IIS) de Windows 10 para ejecutar código PHP en modo local y mostrar adecuadamente las páginas que contienen ese tipo de lenguaje.

Instalar y habilitar IIS y CGI

Internet Information Services con CGI se instala desde la opción Activar o desactivar las características de Windows. En la casilla Servicio World Wide Web marca estas opciones:

  • Características de desarrollo de aplicaciones: todas (IIS por defecto utiliza FastCGI al activar CGI)
  • Características de rendimiento: todas
  • Características HTTP comunes: todas excepto Publicación en WebDav
  • Estado y diagnóstico: marca Registro HTTP y Seguimiento
  • Seguridad: marca Autenticación básica, Autenticación de Windows, Autorización para URL y Filtrado de solicitudes.

De esta forma se instala IIS con la configuración necesaria para funcionar como servidor local en Windows 10, servir páginas aspx y aceptar la configuración para interpretar lenguaje PHP.

Continuar leyendo «Instalar PHP en IIS de Windows 10»

Quake III de 64 bits en macOS Catalina

No es posible jugar a Quake III en macOS Catalina porque el ejecutable del juego no está optimizado para 64 bits y esta versión de macOS no soporta aplicaciones con código de 32 bits.

Nota: El motor de Quake III es software libre pero el juego Quake III: Arena no lo es.

Durante varios años he utilizado el juego Quake III en macOS instalándolo desde el CD oficial (en realidad copiando el contenido del CD a una carpeta en Aplicaciones) y reemplazando el ejecutable original por una versión compilada para macOS, este ejecutable ha sido del tipo binario universal y ha funcionado bien hasta la llegada de macOS Catalina y la interrupción del soporte para las aplicaciones que no sean exclusivamente de 64 bits.

La solución es sencilla, obtener el código fuente desde el proyecto ioquake3 y compilarlo para 64 bits. Esta solución es la propuesta por el usuario andersonbatista333 en el hilo titulado Mac OS X: App not 64-bit optimized for Mac OS Catalina? en GitHub.

Continuar leyendo «Quake III de 64 bits en macOS Catalina»

Navegador web con WebView en C# (3)

Navegador web usando la versión moderna del control WebBrowser, el control WebView, que renderiza las páginas usando el motor de Microsoft Edge en lugar de hacerlo con el motor de Internet Explorer, añadiendo un segundo formulario que muestra el código HTML de la página que se visita, en C#

En 2 ejercicios anteriores (1 y 2) se desarrolla una aplicación de formularios de Windows con Visual Basic, construida alrededor de un objeto de la clase WebBrowser que permite mostrar en su interior páginas web y también interactuar con las páginas visitadas. Se trata de una clase muy madura que apareció en NET Framework 2, fácil de utilizar y con muchos textos de ayuda en Internet.
Pero tiene el inconveniente de que, por su antigüedad, utiliza el motor de renderizado de Internet Explorer, navegador actualmente obsoleto incluso para la propia Microsoft. En teoría renderiza con la versión de Internet Explorer que tengamos instalada en el sistema pero en la práctica parece mostrar las características de Internet Explorer 7 salvo que se manipule el registro para forzar a nuestra aplicación a utilizar el motor de la versión más moderna que es la 11 a condición de que la tengamos instalada (las instrucciones para hacerlo están en el artículo 2 de los referidos al principio del texto).

Continuar leyendo «Navegador web con WebView en C# (3)»

Reemplazar Bloc de Notas por otro editor

Configurar Windows 10 para que utilice como editor de texto por defecto del sistema otro editor de texto diferente que tenga más funcionalidades que el Bloc de Notas, sobre todo el coloreado de sintaxis

El Bloc de Notas de Windows 10 es un editor de texto sumamente simple que apenas se ha modificado durante años. Cualquier usuario aficionado a la programación, independientemente del lenguaje, se da cuenta enseguida que con el Bloc de Notas cualquier tarea se hace sumamente difícil por su falta de funciones.

A mí personalmente me gusta mucho EditPlus de ES-Computing y es el programa que uso, acepta coloreado de sintaxis para muchos lenguajes de programación y permite ejecutar programas Java sencillos desde la propia consola del programa.

Pero lo que quiero es tenerlo como editor por defecto de Windows 10, que cada vez que el sistema o una aplicación busque el Bloc de Notas lo que se abra sea EditPlus y ahorrarme el trabajo de configurar todos los tipos de archivo que deseo que estén asociados con ese programa.

Continuar leyendo «Reemplazar Bloc de Notas por otro editor»

Error UnobtrusiveValidationMode en Asp .NET

Error relativo a validación no-intrusiva (unobtrusive validation) que aparece en aplicaciones web que utilizan Asp .NET 4.5 o posterior creadas en Visual Studio

Al ejecutar la aplicación Asp .NET creada en Visual Studio puede aparecer el error que se muestra en la imagen. La causa radica en el cambio del modo de validación que apareció con la versión 4.5 de Asp .NET, llamada unobtrusive validation y que ha sido traducida como validación no-intrusiva. José Manuel Alarcón tiene un artículo con una explicación excelente sobre este asunto en su blog.

Si la aplicación de Visual Studio utiliza Asp .NET anterior a 4.5 el error no aparece porque se emplea el modo tradicional de validación. Pero si utiliza 4.5 o posterior el error puede aparecer al compilar una página aspx con controles de validación. El caso típico es la migración de un proyecto pre 4.5 abriéndolo con la versión actual de Visual Studio y asignando al proyecto la versión 4.5 o posterior de Asp .NET.
Si se crea un nuevo proyecto web con las versiones recientes de Visual Studio a partir de alguna de las plantillas (es decir, el proyecto no se crea de tipo vacío) el error tampoco aparece porque Visual Studio configura todo lo necesario para usar el modo nuevo de validación, instalando paquetes auxiliares entre los que se encuentra AspNet.ScriptManager.jQuery que en su código de inicialización añade las bibliotecas necesarias con ScriptResourceMapping para incluir jQuery.

Continuar leyendo «Error UnobtrusiveValidationMode en Asp .NET»

Controles de validación en Asp .NET

Validación de controles en Asp .NET mediante controles ocultos: RequiredFieldValidator, CompareValidator, Rangevalidator, RegularExpressionValidator y ValidationSummary, y validación de la página en el servidor mediante la propiedad Page.IsValid, en VB

El usuario de un programa informático a menudo es impredecible en cuanto a lo que teclea. Por muy claras que nos parezcan las instrucciones y las opciones del programa, es necesario saber si lo tecleado por el usario se adapta a lo esperado o no y, en caso de no serlo, tomar acciones adecuadas que eviten el fallo de la aplicación. Se nos pueden ocurrir muchos ejemplos de ello pero, sin ir más lejos, podemos pensar en la petición del número de teléfono en donde el usuario teclea alguna letra, por lo que no se tratará de un número de teléfono válido.

Continuar leyendo «Controles de validación en Asp .NET»

DataGrid con scroll vertical usando OverFlow en Asp .NET

Mostrar en una página web un DataGrid sin paginar añadiendo barra vertical de scroll gracias a la propiedad OverFlow que indica al navegador cómo interpretar los elementos cuyo tamaño es mayor que el de su contenedor

Si tenemos un DataGrid que ha de mostrar un número elevado de filas, tenemos la opción de paginar el DataGrid. Pero si no deseamos organizar el DataGrid en múltiples páginas podemos recurrir a una propiedad CSS, llamada OverFlow, que indica al navegador cómo interpretar los elementos cuyo tamaño es mayor que el de su contenedor.
El ejemplo típico es el de un contenedor <div> de un tamaño determinado que contiene un elemento de un tamaño superior. La propiedad OverFlow le dice al navegador qué hacer, dependiendo de su valor.

Valor Interpretación por el navegador cliente
visible El contenido no es recortado, puede sobresalir del contenedor
hidden El contenido es recortado, sin barras de scroll para poder ver el resto del contenido
scroll El contenido es recortado, pero el navegador coloca barras de scroll
auto Sólo si el contenido es recortado el navegador coloca barras de scroll
Continuar leyendo «DataGrid con scroll vertical usando OverFlow en Asp .NET»

Archivo XML con la estructura de un directorio en C# y VB

Crear en el Escritorio un archivo XML con la estructura de un directorio, incluyendo archivos y subcarpetas de forma recursiva, utilizando la clase XDocument del espacio de nombres System.Xml.Linq, y mostrar en un control el texto generado con el método WriteAllText de la clase File, en C# y VB

Basado en el código propuesto por Marcin Juraszek en el artículo «Creating XML file representing folder structure (including subfolders) in C#» del sitio web stackoverflow.

Continuar leyendo «Archivo XML con la estructura de un directorio en C# y VB»