Я хочу создать псевдоним «статической» папки:
location ~ ^/myapp/([a-zA-Z0-9_-]+)/ {
alias /var/lib/myapp/$1/static/;
autoindex on;
}
Но если у меня есть URL:
Меня перенаправляют на:
что вызывает ошибку 404.
Если я получу доступ:
Я могу правильно видеть список всех файлов html (из-за "автоиндексирования").
Однако, если у меня есть такая конфигурация:
location /myapp/ {
alias /var/lib/myapp/;
autoindex on;
}
nginx НЕ добавляет завершающую косую черту, поэтому я могу правильно получить доступ к страницам .html. Проблема с этой конфигурацией в том, что "static /" должен быть включен в URL-адрес, например:
Как я могу заставить nginx НЕ добавлять завершающую косую черту в первом примере выше?
An alias
в пределах регулярное выражение location
Для блока требуется значение, указывающее полный путь к целевому файлу. Вам нужно захватить оставшуюся часть URI в location
заявление и добавьте его в конец alias
заявление.
Например:
location ~ ^/myapp/([a-zA-Z0-9_-]+)/(.*)$ {
alias /var/lib/myapp/$1/static/$2;
autoindex on;
}
Видеть этот документ для подробностей.