Здравствуйте. Есть сервер, ubuntu на котором крутится nginx.
Директория с конфигами /etc/nginx/sites-primary/
Внутри на каждый сайт свой конфиг, структура которого примерно такая:
server {
listen 80;
server_name site1..com;
root /var/www/site1.com;
location / {
try_files $uri $uri/ @rewrite;
}
location /index.html {
rewrite / / permanent;
}
location ~ ^/(.*?)/index\.html$ {
rewrite ^/(.*?)/ // permanent;
}
location @rewrite {
rewrite ^/(.*)$ /index.php?q=$1;
}
location ~ \.php$ {
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_pass backend-valhalla;
}
location ~* ^.+\.(jpg|jpeg|gif|png|ico|bmp)$ {
#access_log off;
expires 10d;
error_page 404 = @fallback;
break;
}
location ~* ^.+\.(css|js)$ {
#access_log off;
charset utf-8;
expires epoch;
error_page 404 = @fallback;
break;
}
location @fallback {
rewrite ^/(.*)/[^/]+$ /editor/default.png redirect;
}
}
Встала необходимость сделать следующий финт:
Когда мы открываем site1.com/control/ - то у нас должен отобразиться по этому адресу содержимое site2.com. При этом, если я перехожу по ссылкам внутри site1.com/control/ - оно должно переходить внутри site1.com, а не открывать site2.com
Например у меня есть урл site2.com/hallo_world.html
Перейдя по site1.com/control/hallo_world.html должно открыться содержимое урла выше.
Добавление в конфиг site1.com.conf директивы
location ~* ^/control/ {
root /var/www/site1.com;
}
Ничего не дает.
Вторые сутки с гуглом сплю, не получается найти решения..