Tengo un proyecto php que se ejecuta perfectamente en la ventana.
Ahora estoy implementando el proyecto en Centos Linux Server.
define('INCLUDES_PATH', ROOT_PATH.'cms-includes/');
ini_set('include_path',INCLUDES_PATH.':'.ini_get('include_path'));
entonces INCLUDES_PATH
-->C:\xampp\htdocs\cms-includes
Me enfrento a un problema de ruta en Linux. En Linux la ubicación de mi proyecto es/var/www/web_loan/xampp/htdocs\...cms-includes
Ahora está la cuestión de establecer el camino para C:\
. ¿Cómo puedo hacer eso en Linux porque no hay C:\
una ubicación en el servidor?
¿Qué tipo de camino debo dar?
El error se ve así
Fatal error in line 15 of file/var/www/web_loan/xampp/htdocs/cms-includes/init.inc.php
- require_once(INCLUDES_PATHpear.mysql.php): failed to open stream: No such file or directory
PHP Fatal error: require_once(): Failed opening required 'INCLUDES_PATHpear.mysql.php' (include_path='.:/usr/share/pear:/usr/share/php') in /var/www/web_loan/xampp/htdocs/cms-includes/init.inc.php on line 15.
La LÍNEA # 15 parece eninit.inc.php
require_once(INCLUDES_PATH . 'pear.mysql.php');
¿Debo definir INCLUDES_PATH según Linux en defines.inc.php
?
Respuesta1
Las letras de unidad como C:
, D:
etc. no existen en Unix/Linux. Cualquiera que sea el archivo que haya, lo encontrará en algún lugar bajo /
. Tenga en cuenta que el separador de directorios en Unix/Linux es /
, no \
.
Dado lo que escribió, reemplace C:\
por /var/www/web_loan
y reemplace todas las barras invertidas ( \
) por barras diagonales ( /
)
Respuesta2
Primero, verifique que el archivo esté allí. En el símbolo del sistema escriba:
ls -l /var/www/web_loan/xampp/htdocs/cms-includes/init.inc.php
esto también debería mostrarle la propiedad del archivo. Asegúrese de que el usuario que ejecuta Apache pueda leer este archivo. Normalmente ese usuario es www-data
. Si no, ejecuta esto:
chown www-data:www-data /var/www/web_loan/xampp/htdocs/cms-includes/init.inc.php
Intente dar la ruta absoluta en su require
declaración:
require_once('/var/www/web_loan/xampp/htdocs/cms-includes/pear.mysql.php');
Si esto funciona, podría ser que la variable constante no se esté definiendo correctamente.
EDITAR: chown no chmod