Как запретить доступ другим файлам без индекса и ресурса на nginx - PullRequest
0 голосов
/ 01 февраля 2019

Как запретить все файлы в nginx без каких-либо файлов / каталогов

Я использую Plesk Onyx для размещения моего проекта VUE, это очень простой веб-сайт, но всегда обновляемый.Я думаю, что автоматическое развертывание немного сложнее для меня, поэтому я фиксирую встроенный файл в git и использую функцию Git на панели для получения последнего коммита, а затем размещаю его на nginx, как php-проект.

Вот структура файла

index.html
dist/
    someImage.png
    someFiles.mp3
    someStyle.css
    build.js
package.json
src/
someConfigAndKeys...

Вот конф nginx, который я пишу

location ^~ /src/ {
    return 404;
}
location ^~ /node_modules/ {
    return 404;
}
location ^~ /package.json {
    return 404;
}

Я хочу сделать контроль доступа в nginx.только index.html и файлы в dist/ будут иметь доступ ко всем другим файлам, будет отказано (возврат 403 или 404)

Но имя файла может быть изменено другим чайным товарищем, также другие файлы, такие как yarn.lock или .gitignore может быть загружено в будущем, я не думаю, что добавлять код для каждого файла / каталога после обновления проекта - хорошая идея.

Кроме того, я хочу, чтобы все маршруты были try_files index.html, если я установлю маршрут в vue.js под названием 'src', я беспокоюсь о том, что он получит доступ к src/ и будет ли заблокирован, если я добавлю блокировку.

Любой может ответить мне

...