I have 2 cakephp applications: one is using cake 2 and the other is using cake 3.
This is my nginx config
server {
listen 80;
client_max_body_size 2M;
server_name cake.dev;
root /var/virtual/cake2app/webroot;
location /cake3-app/ {
alias /var/virtual/cake3app/webroot;
}
access_log /var/log/nginx/cakephpsite.com-access.log;
include common.conf;
include cakephp.conf;
}
This is common.conf
index index.html;
location ~ /\.ht {
deny all;
}
sendfile off;
This is cakephp.conf
include php.conf;
location / {
try_files $uri $uri/ /index.php?$uri&$args;
expires max;
access_log off;
}
This is php.conf
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
include fastcgi_params;
}
index index.php;
the cake.dev
is correctly pointing to my cake 2 app.
I cannot get cake.dev/cake3-app to point to the cake 3 app.
Inside my cake 3 app, I have a users/login
action which works perfectly if I access the cake 3 from a separate domain.
But that is not what I want.
What have I done wrong in terms of the nginx config?
My error is consistently a 403 if I access cake.dev/cake3-app/
and I get a cake error message telling me there is no such controller when I access cake.dev/cake3-app
.
Please advise.
EDIT:
I manage to use this trick. Inside my cakedev.conf
I wrote
server {
listen 80;
client_max_body_size 2M;
server_name cake.dev;
root /var/virtual/cake2/webroot;
access_log /var/log/nginx/cakephpsite.com-access.log;
include common.conf;
include cakephp.conf;
location /cake3-app/ {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header HOST $http_host;
proxy_set_header X-NginX-Proxy true;
proxy_pass http://127.0.0.1:83;
proxy_redirect off;
rewrite ^/cake3-app/(.*)$ /$1 break;
}
}
Then I have a cake3.conf
server {
listen 83;
client_max_body_size 2M;
server_name 127.0.0.1;
root /var/virtual/cake3/webroot;
include common.conf;
include cakephp.conf;
}
The url redirect works for the web pages but NOT the various assets of the cake3 app.
Cake3App auto points to http://cake.dev/css/base.css
when it should be pointing to http://cake.dev/cake3/css/base.css
Perhaps I need to write something different for the common.conf
and the cakephp.conf
for the cake3.conf
?