O problema é que você está tentando usar um único link relativo que funcionará em duas árvores de diretório, e a relatividade do link não é a mesma nessas duas árvores.
Exemplo
Eu criei suas estruturas de diretório a partir de proj
, mas elas são idênticas.
$ pwd
/home/saml/proj
Aqui está a lib/
tree:
$ tree -lf libs/
libs
'-- libs/cakephp
'-- libs/cakephp/lib
'-- libs/cakephp/lib/Cake
'-- libs/cakephp/lib/Cake/Console
'-- libs/cakephp/lib/Cake/Console/Templates
|-- libs/cakephp/lib/Cake/Console/Templates/Application
'-- libs/cakephp/lib/Cake/Console/Templates/skel
'-- libs/cakephp/lib/Cake/Console/Templates/skel/Plugin
'-- libs/cakephp/lib/Cake/Console/Templates/skel/Plugin/Application -> ../../Application [recursive, not followed]
Aqui está a mysite.com/
tree:
$ tree -lf mysite.com/
mysite.com
'-- mysite.com/cms-skel -> /home/saml/proj/libs/cakephp/lib/Cake/Console/Templates/skel/
'-- /home/saml/proj/libs/cakephp/lib/Cake/Console/Templates/skel//Plugin
'-- /home/saml/proj/libs/cakephp/lib/Cake/Console/Templates/skel//Plugin/Application -> ../../Application
Então, se olharmos para o link do aplicativo na primeira árvore, lib/
:
$ pwd
/home/saml/proj/libs/cakephp/lib/Cake/Console/Templates/skel/Plugin
$ readlink -f Application
/home/saml/proj/libs/cakephp/lib/Cake/Console/Templates/Application
No entanto, se fizermos a mesma análise no diretório mysite.com/
, veremos nosso problema.
$ pwd
/home/saml/proj/mysite.com/cms-skel/Plugin
$ readlink -f Application
/home/saml/proj/libs/cakephp/lib/Cake/Console/Templates/Application
O que está acontecendo?
Bem, quando você está na mysite.com/
tree 2 níveis acima, mysite.com/cms-skel/Plugin/
é libs/cakephp/lib/Cake/Console/Templates
.
Isso deve ajudar a ver:
$ pwd
/home/saml/proj/mysite.com/cms-skel/Plugin
$ readlink -f ../../
/home/saml/proj/libs/cakephp/lib/Cake/Console/Templates
Eu não vejo uma maneira de contornar isso, dadas as diferenças no número de diretórios dentro das 2 árvores.