GNU/Linux >> Tutoriales Linux >  >> Ubuntu

Cómo instalar Yii PHP Framework en Ubuntu

Yii (pronunciado Yee o [ji:] ) es un marco de programación web genérico gratuito y de código abierto, rápido, de alto rendimiento, seguro, flexible pero pragmático y eficiente para desarrollar todo tipo de aplicaciones web usando PHP.

En este artículo, aprenderá cómo instalar la última versión del marco Yii en Ubuntu Lanzamientos LTS (soporte a largo plazo) para comenzar a desarrollar aplicaciones web PHP modernas.

Soporte de plataforma

Yii tiene las siguientes versiones de Ubuntu LTS (soporte a largo plazo):

  • Ubuntu 20.04 LTS ("Focal")
  • Ubuntu 18.04 LTS ("Biónico")
  • Ubuntu 16.04 LTS ("Xenial")

Requisitos

  • Una instancia en ejecución del servidor Ubuntu.
  • Una pila LEMP con PHP 5.4.0 o superior.
  • A Composer:un administrador de paquetes a nivel de aplicación para PHP.

En esta página

  • Instalación de Yii Framework a través de Composer en Ubuntu
  • Ejecutando Yii Usando el Servidor de Desarrollo PHP
  • Ejecución del proyecto Yii en producción usando un servidor HTTP NGINX
  • Habilite HTTPS en aplicaciones Yii usando Let's Encrypt

Hay dos formas de instalar Yii , usando el Compositor administrador de paquetes o instalándolo desde un archivo comprimido. La primera es la forma recomendada, ya que le permite instalar nuevas extensiones o actualizar Yii por un solo comando.

Instalación de Yii Framework a través de Composer en Ubuntu

Si no tienes Compositor instalado, puede instalarlo usando los siguientes comandos, que luego instalarán Yii y administrar sus dependencias.

$ curl -sS https://getcomposer.org/installer | php
$ sudo mv composer.phar /usr/local/bin/composer
$ sudo chmod +x /usr/local/bin/composer

Una vez que haya instalado Composer, muévase al directorio /var/www/html/ que almacenará sus aplicaciones web o archivos de sitios web, luego instale el Yii paquete usando el compositor (reemplace proyecto de prueba con el nombre del directorio de su aplicación web).

$ cd /var/www/html/
$ composer create-project --prefer-dist yiisoft/yii2-app-basic testproject

Ejecutando Yii Usando el Servidor de Desarrollo PHP

En este punto, está listo para comenzar a usar Yii marco para el desarrollo. Para ejecutar el servidor de desarrollo de PHP, acceda a testprojects directorio (el nombre de su directorio debe ser diferente dependiendo de lo que especificó en el comando anterior), luego inicie el servidor de desarrollo. De forma predeterminada, debería ejecutarse en el puerto 8080 .

$ cd /var/www/html/testproject/
$ php yii serve

Para ejecutar el servidor de desarrollo en otro puerto, por ejemplo, puerto 5000 , use el --port bandera como se muestra.

$ php yii serve --port=5000

Luego abra su navegador web y navegue usando la siguiente dirección:

http://SERVER_IP:8080
OR
http://SERVER_IP:5000

Ejecución del proyecto Yii en producción usando un servidor HTTP NGINX

Para implementar y acceder a un Yii aplicación en producción, requiere un servidor HTTP como NGINX , Apache/HTTPD o cualquier otro software de servidor web compatible.

Para acceder a Yii aplicación sin escribir su puerto, necesita crear el DNS requerido A registro para apuntar su dominio a su Yii servidor de aplicaciones framework.

Para esta guía, mostraremos cómo implementar un Yii aplicación con NGINX . Por lo tanto, debe crear un archivo de configuración de bloque de servidor o host virtual en /etc/nginx/sites-disponible/ directorio de su aplicación para que NGINX puede servirlo.

$ sudo vim /etc/nginx/sites-available/testproject.me.conf

Copie y pegue la siguiente configuración en él (reemplace testprojects.me y www.testprojects.me con su nombre de dominio). Especifique también los medios NGINX pasará FastCGI solicitudes a PHP-FPM , en este ejemplo, estamos usando un socket UNIX (/run/php/php7.4-fpm.sock ):

server {
    set $host_path "/var/www/html/testproject";
    #access_log  /www/testproject/log/access.log  main;

    server_name  testprojects.me www.testprojects.me;
    root   $host_path/web;
    set $yii_bootstrap "index.php";

    charset utf-8;

    location / {
        index  index.html $yii_bootstrap;
        try_files $uri $uri/ /$yii_bootstrap?$args;
    }

    location ~ ^/(protected|framework|themes/\w+/views) {
        deny  all;
    }

    #avoid processing of calls to unexisting static files by yii
    location ~ \.(js|css|png|jpg|gif|swf|ico|pdf|mov|fla|zip|rar)$ {
        try_files $uri =404;
    }

    # pass the PHP scripts to FastCGI server listening on UNIX socket 
    location ~ \.php {
        fastcgi_split_path_info  ^(.+\.php)(.*)$;

        #let yii catch the calls to unexising PHP files
        set $fsn /$yii_bootstrap;
        if (-f $document_root$fastcgi_script_name){
            set $fsn $fastcgi_script_name;
        }
       fastcgi_pass   unix:/run/php/php7.4-fpm.sock;
        include fastcgi_params;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fsn;

       #PATH_INFO and PATH_TRANSLATED can be omitted, but RFC 3875 specifies them for CGI
        fastcgi_param  PATH_INFO        $fastcgi_path_info;
        fastcgi_param  PATH_TRANSLATED  $document_root$fsn;
    }

    # prevent nginx from serving dotfiles (.htaccess, .svn, .git, etc.)
    location ~ /\. {
        deny all;
        access_log off;
        log_not_found off;
    }
}

Guarde el archivo y ciérrelo.

Luego revisa el NGINX sintaxis de configuración para la corrección, si está bien, habilite la nueva aplicación como se muestra:

$ sudo nginx -t
$ sudo ln -s /etc/nginx/sites-available/testprojects.me.conf /etc/nginx/sites-enabled/testprojects.me.conf

Luego reinicie el servicio NGINX para aplicar los nuevos cambios:

$ sudo systemctl restart nginx

Vuelva a su navegador web y navegue con su nombre de dominio.

http://testprojects.me
OR
http://www.testprojects.me

Habilite HTTPS en aplicaciones Yii usando Let's Encrypt

Por último, debe habilitar HTTPS en tu sitio web. Puede utilizar un certificado Let's Encrypt SSL/TLS gratuito (que está automatizado y reconocido por todos los navegadores web modernos) o adquirir un certificado de una CA comercial.

Si decide utilizar un certificado de Let's Encrypt, se puede instalar y configurar automáticamente mediante el certbot herramienta. Para instalar certbot , necesita instalar snapd para instalarlo.

$ sudo snap install --classic certbot

Luego use certbot para obtener e instalar/configurar su certificado SSL/TLS gratuito para usar con el servidor web NGINX (proporcione un correo electrónico válido para la renovación y siga las indicaciones para completar la instalación):

$ sudo certbot --nginx

Ahora ve a tu navegador web una vez más para confirmar que tu Yii la aplicación ahora se ejecuta en HTTPS (recuerda HTTP debería redirigir automáticamente a HTTPS ).

http://testprojects.me
OR
http://www.testprojects.me

Para obtener más información, como conectar su aplicación a una base de datos, consulte la documentación del marco Yii en el sitio web oficial del proyecto Yii. Pruébelo y comparta sus opiniones sobre Yii o haga cualquier pregunta a través del formulario de comentarios a continuación.


Ubuntu
  1. Cómo instalar PHP 7.4 y 8.0 en Ubuntu 18.04 o 20.04

  2. Cómo instalar PHP 8.0 en Ubuntu 20.04 / Ubuntu 18.04

  3. Cómo instalar PHP 7.2 en Ubuntu 16.04

  4. Cómo instalar PHP 7.3 en Ubuntu 16.04

  5. Cómo instalar PHP 7.2 en Ubuntu 16.04

Cómo instalar PrestaShop en el servidor Ubuntu 20.04

Cómo instalar Yii Framework en Ubuntu 20.04 LTS

Cómo instalar PHP 8.0 en Ubuntu 20.04/18.04

Cómo instalar y configurar Yii PHP Framework en Ubuntu Linux

Cómo instalar PHP en Ubuntu 22.04

Cómo instalar PHP en Ubuntu 22.04