Я размещаю несколько приложений django на одном сервере.
Когда пользователь посещает: http://dev-app.example.com/testapp1
Мне нужно, чтобы служить/статическими с корневым путем динамически генерируемым от $ Урии, потому что я не использую одни и те же активы через приложение, но тот же самый путь к ним.
Мой Nginx файлы конфигурации дерева:
nginx
├── sites-enabled
│ ├── myconf
│ myapps/
│ ├── testapp1
│ └── testapp2
myconf файл:
server {
listen 8088;
server_name dev-app.example.com;
location = favicon.ico { access_log off; log_not_found off; }
location /static
# The line below isn't working even if the $uri has the string I want to concatenate
root /home/user$uri/current;
}
include /etc/nginx/myapps/*;
}
testapp1 файл:
location /testapp1 {
include uwsgi_params;
uwsgi_pass unix:/home/user/testapp1/current/testapp1.sock;
}
testapp2 файл:
location /testapp2 {
include uwsgi_params;
uwsgi_pass unix:/home/user/testapp2/current/testapp2.sock;
}
Я хочу использовать встроенную переменную $ uri nginx для создания моего корневого пути для/статического местоположения в файле myconf
для каждого запрошенного приложения соответственно.
Когда пользователь открывает http://dev-app.example.com/whatever Я хочу служить этому:
# In the myconf file
location /static {
root /home/user/whatever/current;
}
Можете ли вы показать большую часть своей конфигурации nginx? Я не могу понять, как это должно работать ... – GwynBleidD
@GwynBleidD Я просто сделал, спасибо. –
Просто проверяя, правильно ли это понимается, ваши приложения подаются на '// yourdomain.com/testapp1' и' // yourdomain.com/testapp2', но для обоих приложений ваши статические файлы находятся в '//yourdomain.com/static '. Верный? – GwynBleidD