Nginx автоматически загружает index.html без указания

В моем случае проблема была решена путем запуска этого скрипта при запуске:

#!/bin/bash/
sleep 30 && conky;
1
задан 23 November 2017 в 22:24

3 ответа

Если в противном случае не указано, директива index имеет подразумеваемое значение по умолчанию index.html. Что присутствует в корне вашего документа. (См. Приведенную ниже документацию, в которой я подробно описывал значения по умолчанию и т. Д.)

Если вы хотите изменить то, что она служит в качестве своей индексной страницы, вам необходимо определить новую index директиву, ваш блок местоположения / или примените его глобально, просто поместив его за пределы блоков местоположения, но все еще в пределах вашего серверного блока:

index nginx.html;

Это говорит nginx вместо этого искать другой файл индекса.

Проблема, которую вы видите, связана с тем, что блок / location изменяется , если у вас есть / указано, и потому, что вы не разрешаете autoindex и потому что /whatever это ваш URI, и он не существует ни в качестве файла, ни в каталоге, он возвращается к вашей третьей опции, nginx.html. Я знаю, что это противоречит интуиции, поскольку пустой URI или / URI обычно означает «Обработать это на блок location / { }, но это больше подразумевается в мире, что это приведет вас к домашней или индексной странице данного веб-сайт, и поэтому существует директива index.

Вам нужно сообщить системе, что нужно рассматривать как индексный файл для любой конфигурации. Вы не можете полагаться исключительно на try_files в своем [ [16]

Обратите внимание, что если вы не определяете URI, try_files

Обратите внимание, что если вы не определяете URI, try_files ] возвращается к директиве index, поэтому запрос http://foobarbaz.foo:8510 достигнет блока сервера nginx, прослушивающего порт 8510 для записи запроса имени сервера / $HOST записи foobarbaz.foo, с пустым URI и технически у вас будет nginx внутри, попробуйте и покажите страницу индекса по умолчанию index.html из-за вашей конфигурации, не указывая другую index для обслуживания любого типа запроса.

Из связанного nginx do cumentation директивы index:

Синтаксис: index file ...; По умолчанию: index index.html; Контекст: http, server, location Определяет файлы, которые будут использоваться в качестве индекса. Имя файла может содержать переменные. Файлы проверяются в указанном порядке. Последним элементом списка может быть файл с абсолютным путем. Пример:
index index.$geo.html index.0.html /index.html;
Следует отметить, что использование индексного файла вызывает внутреннюю переадресацию, и запрос может обрабатываться в другом месте. Например, со следующей конфигурацией:
location = / {
    index index.html;
}

location / {
    ...
}
... запрос «/» фактически будет обработан во втором месте как «/index.html».
0
ответ дан 22 May 2018 в 15:57

Если в противном случае не указано, директива index имеет подразумеваемое значение по умолчанию index.html. Что присутствует в корне вашего документа. (См. Приведенную ниже документацию, в которой я подробно описывал значения по умолчанию и т. Д.)

Если вы хотите изменить то, что она служит в качестве своей индексной страницы, вам необходимо определить новую index директиву, ваш блок местоположения / или примените его глобально, просто поместив его за пределы блоков местоположения, но все еще в пределах вашего серверного блока:

index nginx.html;

Это говорит nginx вместо этого искать другой файл индекса.

Проблема, которую вы видите, связана с тем, что блок / location изменяется , если у вас есть / указан, и потому что вы не разрешаете autoindex и потому что /whatever это ваш URI, и он не существует ни в качестве файла, ни в каталоге, он возвращается к вашей третьей опции, nginx.html. Я знаю, что это противоречит интуиции, поскольку пустой URI или / URI обычно означает «Обработать это на блок location / { }, но это больше подразумевается в мире, что это приведет вас к домашней или индексной странице данного веб-сайт, и поэтому существует директива index.

Вам нужно сообщить системе, что нужно рассматривать как индексный файл для любой конфигурации. Вы не можете полагаться исключительно на try_files в своем [ [16]

Обратите внимание, что если вы не определяете URI, try_files

Обратите внимание, что если вы не определяете URI, try_files ] возвращается к директиве index, поэтому запрос http://foobarbaz.foo:8510 достигнет блока сервера nginx, прослушивающего порт 8510 для записи запроса имени сервера / $HOST записи foobarbaz.foo, с пустым URI и технически у вас будет nginx внутри, попробуйте и покажите страницу индекса по умолчанию index.html из-за вашей конфигурации, не указывая другую index для обслуживания любого типа запроса.

Из связанного nginx do cumentation директивы index:

Синтаксис: index file ...; По умолчанию: index index.html; Контекст: http, server, location Определяет файлы, которые будут использоваться в качестве индекса. Имя файла может содержать переменные. Файлы проверяются в указанном порядке. Последним элементом списка может быть файл с абсолютным путем. Пример: index index.$geo.html index.0.html /index.html; Следует отметить, что использование индексного файла вызывает внутреннюю переадресацию, и запрос может обрабатываться в другом месте. Например, со следующей конфигурацией: location = / { index index.html; } location / { ... } ... запрос «/» фактически будет обработан во втором месте как «/index.html».
0
ответ дан 18 July 2018 в 02:44

Если в противном случае не указано, директива index имеет подразумеваемое значение по умолчанию index.html. Что присутствует в корне вашего документа. (См. Приведенную ниже документацию, в которой я подробно описывал значения по умолчанию и т. Д.)

Если вы хотите изменить то, что она служит в качестве своей индексной страницы, вам необходимо определить новую index директиву, ваш блок местоположения / или примените его глобально, просто поместив его за пределы блоков местоположения, но все еще в пределах вашего серверного блока:

index nginx.html;

Это говорит nginx вместо этого искать другой файл индекса.

Проблема, которую вы видите, связана с тем, что блок / location изменяется , если у вас есть / указано, и потому, что вы не разрешаете autoindex и потому что /whatever это ваш URI, и он не существует ни в качестве файла, ни в каталоге, он возвращается к вашей третьей опции, nginx.html. Я знаю, что это противоречит интуиции, поскольку пустой URI или / URI обычно означает «Обработать это на блок location / { }, но это больше подразумевается в мире, что это приведет вас к домашней или индексной странице данного веб-сайт, и поэтому существует директива index.

Вам нужно сообщить системе, что нужно рассматривать как индексный файл для любой конфигурации. Вы не можете полагаться исключительно на try_files в своем [ [16]

Обратите внимание, что если вы не определяете URI, try_files

Обратите внимание, что если вы не определяете URI, try_files ] возвращается к директиве index, поэтому запрос http://foobarbaz.foo:8510 достигнет блока сервера nginx, прослушивающего порт 8510 для записи запроса имени сервера / $HOST записи foobarbaz.foo, с пустым URI и технически у вас будет nginx внутри, попробуйте и покажите страницу индекса по умолчанию index.html из-за вашей конфигурации, не указывая другую index для обслуживания любого типа запроса.

Из связанного nginx do cumentation директивы index:

Синтаксис: index file ...; По умолчанию: index index.html; Контекст: http, server, location Определяет файлы, которые будут использоваться в качестве индекса. Имя файла может содержать переменные. Файлы проверяются в указанном порядке. Последним элементом списка может быть файл с абсолютным путем. Пример: index index.$geo.html index.0.html /index.html; Следует отметить, что использование индексного файла вызывает внутреннюю переадресацию, и запрос может обрабатываться в другом месте. Например, со следующей конфигурацией: location = / { index index.html; } location / { ... } ... запрос «/» фактически будет обработан во втором месте как «/index.html».
0
ответ дан 24 July 2018 в 17:38

Другие вопросы по тегам:

Похожие вопросы: