Etiqueta: windows

  • Qué se necesita para desarrollar usando Symfony en Windows

    Qué se necesita para desarrollar usando Symfony en Windows

    Personalmente, es algo que preferiría evitar pero… si no queda opción, hay que hacerlo funcionar 🙂

    Algunos problemas que vamos a tener que resolver para tener un entorno de desarrollo medianamente cómodo son:

    1. Contar con PHP
    2. Contar con composer
    3. Contar con git
    4. Contar con algún IDE

    Todas estas cosas en Linux son prácticamente triviales (Especialmente si usás Ubuntu o algún derivado) pero en Windows son un poquito más difíciles de conseguir.

    Alternativamente podés usar un entorno virtualizado, pero si la única opción es un entorno local en Windows, acá van las instrucciones:

    Instalando PHP en Windows

    Instalar PHP en Windows no es una tarea extremadamente sencilla… para empezar debes descargar el ejecutable adecuado para tu S.O. (Según sea 32 o 64 bits). Eso lo podés hacer desde acá.

    El detalle es que, para que php funcione necesitas tener el redistribuible de Visual C++ correspondiente (!).

    Lo podés descargar de acá (Tené cuidado de descargar la versión correcta para tu Windows).

    Una vez esté todo instalado, para asegurarte de que funciona abrí una terminal en C:\php (O donde hayas descargado y descomprimido el php) y ejecutá el comando php -v.

    Deberías ver algo como:

    Pantalla de línea de comandos de Windows mostrando PHP funcionando

    Una opción alternativa (y que puede resultar más simple) es usar alguno que ya tenga todo incorporado (PHP, MySQL, etc…) como XAMPP o Laragon.

    A los efectos de este artículo asumiré que usamos el camino de sólo instalar PHP (Que, en definitiva es lo único que necesitamos por el momento).

    Instalando composer en Windows

    Conseguir en composer es bastante simple. Te lo podés bajar de acá y se instala como cualquier otro programa de Windows.

    Lo único importante aquí es ingresar la ruta del php.exe que hayas instalado en el paso anterior (Si hay uno solo el mismo instalador lo reconocerá):

    Selección del ejecutable de PHP

    Para ver que todo esté en su lugar, abrí una consola de Windows (Comando cmd) y tipeá composer. Deberías ver algo como:

    Composer desde la terminal de Windows

    Esto sucede porque el instalador de Composer ha modificado la variable de entorno PATH, de modo de que, tanto el comando composer como el propio php sean accesibles desde cualquier ubicación.

    Instalando git en Windows

    Algo bastante similar es la instalación de git para Windows. Lo bajás de acá y, al instalarlo no olvides instalar git-bash (Una consola posix para usar desde tu Windows casi como si estuvieras en Linux).

    No estoy 100% seguro de esto, pero me juego a que está basado en cyg-win, así que si conocés cyg-win no hay mucha novedad en git-bash.

    Habilitando extensiones de php necesarias para Symfony

    Symfony requiere para funcionar que la extensión php-curl esté disponible.

    Con la instalación que bajaste seguramente esto se cumple, sólo que puede estar deshabilitada en el archivo php.ini.

    Lo que tenés que hace es abrir el archivo c:\php\php.ini con algún editor de texto y sacar los «;» del comienzo de las líneas.

    Contenido original del archivo php.ini

    Debe quedar así:

    Creando tu primer proyecto Symfony en Windows

    Con todo esto en su lugar podés crear tu primer proyecto Symfony:

    1. Abrí una consola git-bash
    2. Creá tu proyecto usando composer
      1. composer create-project symfony/website-skeleton my-project
      2. Esperá a que termine la descarga
    3. Probálo!
      1. cd my-project
      2. php bin/console server:run
      3. Abrí un navegador en http://localhost:8000
      4. Si ves una pantalla como esta

    ¡Está todo listo!

    Ahora sólo te queda empezar a codear 🙂

    Adelante!

    P.D.: Si preferís el video podés verlo acá

  • ¿Es posible hostear una aplicación PHP en Windows?

    ¿Es posible hostear una aplicación PHP en Windows?

    Un amigo me contactó por un problema que estaba enfrentando su equipo técnico: están desarrollando una aplicación PHP que necesitan hostear sí o sí en un servidor Windows.

    Actualmente tienen un IIS montado en su servidor y la duda era, primero si era posible servir PHP desde IIS o si era necesario usar un servidor Apache y, en tal caso, si era necesario compilarlo desde 0 (Algo que estaba fuera del alcance de dicho equipo).

    Mi primera impresión ante esta situación fue de sorpresa. Ciertamente, Windows no sería mi elección en cuanto a servidor (En general prefiero mantenerme alejado de Windows, pero especialmente para el caso de servidores soy bastante estricto).

    Yo optaría por alguna distribución de linux (Probablemente basada en Debian como para hacer las cosas sencillas, pero en DistroWatch siempre se encuentran sorpresas interesantes) y, de ser posible iría con un VPS montado en DigitalOcean.

    Ahora bien, intentaré responder las preguntas de a una.

    ¿Puede IIS servir PHP?

    Sí.

    De hecho, Microsoft tiene un sitio especialmente dedicado al tema en https://php.iis.net/

    Un pequeño detalle es que este sitio ha quedado algo desactualizado… habla de la versión 5.3 de php :p, pero se pueden seguir estas instrucciones para actualizar la versión a alguna más moderna.

    ¿Puede Apache instalarse en Windows?

    Sí.

    El webserver Apache está escrito en lenguaje C con lo cuál, puede crearse una versión especial para cualquier plataforma que tenga un compilador de ese lenguaje (Tal es el caso de Windows).

    ¿Es necesario compilar Apache desde cero para instalarlo en Windows?

    No.

    Apache puede ser instalado directamente descargando los binarios (sólo que no los podrás obtener del sitio oficial del proyecto que sólo tiene el código fuente).

    Un par de lugares donde podés conseguir los binarios de Windows:

    Y si te interesa el «paquete completo» podés usar alguno de los que viene ya con MySQL y PHP:

    Sí es cierto que al compilar el Apache vos mismo tenés más control sobre lo que instalás en tu servidor (¡Pero también podés hacer mucho lío si no sabés lo que estás haciendo!).

    Conclusión

    Es perfectamente posible hostear una aplicación PHP en un servidor Windows. Las opciones son muchas y, como de costumbre, no existe una que sea universalmente mejor que las otras, será cuestión de evaluar tus posibilidades y decidir cuál es el mejor camino.