
Tengo varios hosts virtuales con cada carpeta. Y una única carpeta compartida:
/home/website1
/home/website2
/home/website3
/home/shared_src
Los enlaces simbólicos funcionan bienadentrocada carpeta a una carpeta por sitio web llamada "código base".
He copiado la carpeta "codebase" en /home/shared_src y me gustaría usar un enlace simbólico para acceder a /home/shared_src_codebase desde cada uno de los otros sitios web. Pero al hacer esto me sale:
PHP Fatal error: Cannot redeclare class [patch and class...]
¿Qué debo agregar a la configuración de Apache para permitir enlaces simbólicos a la carpeta compartida_src fuera de la raíz web?
Necesito hacer esto para Apache en unservidor debian. Intenté usar alias como se describe aquí. O ese no es el truco o lo hice mal: ¿Seguridad del enlace simbólico al directorio fuera de webroot establecida en 777?
En otro sistema que usé una vez (basado en CentOS), la configuración se llamaba PHPBaseDir. En debian no lo sé...
ACTUALIZAR CON INFORMACIÓN MÁS DETALLADA
Principalmente, el error se debió a que el enlace simbólico estaba vinculado a una carpeta con el mismo nombre que una carpeta física dentro de la carpeta del sitio web.
/home/website1/typo3_src-6.2
/home/website/typo3_src -> /home/sharedsource/typo3_src-6.2 (symlink)
Eso está arreglado y ahora obtengo esto en el registro de Apache:
[Wed Jan 15 09:48:17 2014] [error] [client xx.xx.xx.xx] PHP Fatal error: require_once(): Failed opening required '/home/cstmr_opengate/band.opengate.dk/website/typo3_src-6.2.0beta3/typo3/sysext/core/Resources/PHP/TYPO3.Flow/Classes/TYPO3/Flow/Package/PackageManager.php' (include_path='/home/cstmr_opengate/band.opengate.dk/website/typo3/contrib/pear/:.:/usr/share/php:/usr/share/pear') in /home/x_src/typo3_src-6.2.0beta3/typo3/sysext/core/Classes/Core/ClassLoader.php on line 178
Entonces, el problema probablemente no sea el enlace simbólico. Causa que se sigue el enlace simbólico a la carpeta compartida. Es el error que se produce después de que se utiliza el enlace simbólico...
Respuesta1
Hay dos formas en Apache de hacer esto, que se pueden encontrar en el siguiente enlace: Documentos de Apache
Básicamente, utilice el
Option FollowSymlinks
en la <directory>
sección o defina un alias para el directorio.