He estado luchando para que mi sitio CakePHP funcione en una cuenta de Godaddy "grid hosting". La aplicación My Cake está configurada desde un subdirectorio en la cuenta y se puede acceder a través de un subdominio. Tuve que ajustar mis archivos .htaccess para que funcionara, y ahora necesito que la consola CakePHP funcione en este entorno.Consola CakePHP en Godaddy Hosting
Tengo la misma configuración de aplicación de tortas en un servidor Ubuntu alojado en el servicio EC2 de Amazon. Básicamente una configuración lista para usar de Ubuntu LAMP. La consola de CakePHP funciona como se espera en este entorno.
Cuando trato de ejecutar la consola en GoDaddy me sale el siguiente mensaje:
CakePHP Consola: Este archivo se ha cargado correctamente y no puede continue.Please asegurarse de que/torta/consola está en su sistema de ruta, y compruebe el manual para el uso correcto de este comando . (http://manual.cakephp.org/)
he empezado a añadir algo de código en la depuración de la torta/consola/cake.php para averiguar lo que está pasando . En el sitio de GoDaddy, cuando hago eco en print_r($this->args)
en la línea 183, veo que la matriz está vacía. Cuando hago esto en mi instancia EC2 Ubuntu me sale esto:
Array
(
[0] => /var/www/www.directory.sdcweb.org/htdocs/cake/console/cake.php
)
Parece que la línea de comandos de GoDaddy PHP no está pasando a través de los argumentos de línea de comandos shell bash. ¿Alguien tiene algún consejo sobre cómo puedo hacer que funcione la consola CakePHP en Godaddy?
La escritura del golpe que invoca la cáscara de la torta contiene la siguiente
LIB=${0/%cake/}
APP=`pwd`
exec php -q ${LIB}cake.php -working "${APP}" "[email protected]"
exit;
Pienso que la modificación de este script puede resolver el problema.
los argumentos de la línea de comandos no se están pasando ... no estoy seguro de la causa de esto ... Y en la parte superior de cake.php hay una ruta a/usr/bin/php, pero esta se encuentra en/usr/local/bin/php en Godaddy. Puedo solucionar esto probablemente. – the0ther
bien, register_argc_argv está desactivado, esta es probablemente la razón por la cual los parámetros de la línea cmd no se están pasando. – the0ther