2010-10-09 11 views

Respuesta

7

Desde: http://dogmatic69.com/blog/development/7-using-other-apps-with-cakephp-htaccess-config

Una cosa que se hace mucho en #cakephp es cómo utilizar otras aplicaciones junto con CakePHP, la promulgación respuesta es, normalmente, tan feo. Pegue los archivos/carpetas en webroot lateral /. Aunque eso funciona, no es muy agradable. Te mostraré un pequeño truco con los archivos .htaccess.

La primera (realmente simple) es usar un .htaccess dentro de la subcarpeta. Por ejemplo, puedes tener una copia de Joomla! corriendo junto al pastel sin problemas cuando tienes el .htaccess para Joomla! habilitado Si la aplicación no tiene uno y/o no sabría qué poner en el archivo .htaccess tiene otra opción

Haga que Apache detenga el proceso de reescritura si encuentra una solicitud para su subdirectorio. Esto se hace agregando una regla para el subdirectorio y luego diciéndole a Apache que es la última regla que debe procesarse. El archivo .htaccess que desea editar es el que se encuentra dentro de su directorio APP. Todo lo que quiere es añadir la siguiente línea:

<IfModule mod_rewrite.c> 
    RewriteEngine on 

    RewriteRule (some_folder/.*) $1 [L] # adjust the regex to what you want. 

    # normal cake rules 
    RewriteRule ^$ webroot/ [L] 
    RewriteRule (.*) webroot/$1 [L] 
</IfModule> 

Usted puede hacer esto por el mayor número de sub carpetas como desee, cambiando la expresión regular en consecuencia. Es bastante simple de hacer y es mucho más limpio que tener todas tus cosas dentro de la raíz web/carpeta de tu aplicación.

+1

funcionó sin ningún problema y era muy fácil. Gracias @Harsha – Garry

2

Una forma de hacer esto es tener su dominio apuntando a site.com/cakefolder y luego tener otro subdominio blog.site.com señalando site.com/blog carpeta

esta manera a su usuario, siempre sería site.com y blog.site.com

+0

los archivos cakephp están en reposo en el directorio raíz ... –

+0

y luego quizás moverlos a otro directorio? – Nigel

+0

@Nigel ¿cómo recomendarías señalar el dominio de esta manera? Este es un parámetro de configuración administrado en mi archivo de configuración del servidor ¿correcto? – usumoio

3

Simplemente coloque la instalación de wordpress en la carpeta "blog" de su carpeta/app/webroot.

Cake se cargará desde la raíz web como si los archivos se encontraran en una subcarpeta normal bajo una aplicación sin pastel. Es posible que deba editar/ajustar las rutas en los archivos wp configs o .htaccess para obtener todo perfecto, pero no es tan difícil.

+1

esa no es la forma correcta de hacerlo. eso es lo que dijo alguien en IRC. http://dogmatic69.com/blog/development/7-using-other-apps-with-cakephp-htaccess-config –

+0

todo lo que hace es hacer que una subcarpeta de cualquier nombre especificado actúe igual que si la hubieras colocado la carpeta de la aplicación/webroot. Acabo de probarlo localmente y funciona de la caja si pones los contenidos de la carpeta raíz de wordpress en la carpeta app/webroot/blog. http://groups.google.com/group/cake-php/browse_thread/thread/a3b4b82eefeb9d8a –

+0

Antes de decir que no es la manera correcta de hacerlo, cuando es obvio que ni siquiera lo has probado, de ahí la pregunta siendo preguntado aquí. ¿Por qué no lo intentas? Podrías ser sorpresas. Tu * do * necesitas cambiar las rutas wp en varios lugares Creo que para obtener el archivo db cargado etc. –