Requisitos del ejecución
Los frameworks modernos de desarrollo web adoptan una arquitectura donde la ejecución se inicia desde un directorio específicamente designado para ser accesible públicamente, generalmente denominado "public". Esta práctica, conocida como "Public Web Root" o "Web Root Isolation", se implementa para reforzar medidas de seguridad y optimizar la estructura organizativa del proyecto. El "Front Controller Pattern" es el patrón de diseño estructural que facilita esta metodología, donde un controlador único, típicamente el archivo index.php, actúa como el conducto central para todas las solicitudes entrantes. Este controlador tiene la responsabilidad de dirigir dichas solicitudes hacia los componentes apropiados de la aplicación para su procesamiento.
La adopción de este enfoque garantiza que solo los archivos y recursos destinados a ser públicos sean expuestos, manteniendo el resto de la lógica y los datos de la aplicación fuera del alcance directo del cliente. Además, es una norma establecida dentro de las mejores prácticas el acceso a la aplicación a través de un dominio o subdominio base, garantizando que, aunque los archivos de la aplicación se alojen en la raíz del directorio asignado al dominio o subdominio, la configuración administrativa establezca “public” como directorio raíz para la ejecución pública. Ignorar esta recomendación y exponer toda la estructura de la aplicación supondría un incremento significativo en los riesgos de seguridad. La implementación de estas estrategias es una práctica estándar en la industria, diseñada para salvaguardar la seguridad de la aplicación y promover una codificación organizada.
PHP and Required Extensions
PHP version 7.4 or newer is required, with the following PHP extensions are enabled:
Warning
The end of life date for PHP 7.4 was November 28, 2022. If you are still using PHP 7.4, you should upgrade immediately. The end of life date for PHP 8.0 will be November 26, 2023.
Optional PHP Extensions
The following PHP extensions should be enabled on your server:
The following PHP extensions are required when you use a Cache server:
The following PHP extensions are required when you use PHPUnit:
dom (if you use TestResponse class)
libxml (if you use TestResponse class)
xdebug (if you use
CIUnitTestCase::assertHeaderEmitted()
)
Supported Databases
A database is required for most web application programming. Currently supported databases are:
MySQL via the
MySQLi
driver (version 5.1 and above only)PostgreSQL via the
Postgre
driver (version 7.4 and above only)SQLite3 via the
SQLite3
driverMicrosoft SQL Server via the
SQLSRV
driver (version 2005 and above only)Oracle Database via the
OCI8
driver (version 12.1 and above only)
Not all of the drivers have been converted/rewritten for Higgs7. The list below shows the outstanding ones.
MySQL (5.1+) via the pdo driver
Oracle via the pdo drivers
PostgreSQL via the pdo driver
MSSQL via the pdo driver
SQLite via the sqlite (version 2) and pdo drivers
CUBRID via the cubrid and pdo drivers
Interbase/Firebird via the ibase and pdo drivers
ODBC via the odbc and pdo drivers (you should know that ODBC is actually an abstraction layer)