
У меня есть кластер Kubernetes и очень простой контейнер. Я пытаюсь получить к нему доступ через интернет, и задача очень простая, мне нужно просто вывести индекс каталога. Вот моя базовая конфигурация виртуального хоста:
<VirtualHost *:80>
Alias /docs /mnt/nfs
<Directory /mnt/nfs>
DAV Off
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
Когда я использую службу или модули с опцией переадресации портов kubectl, все работает как и ожидалось, и мои файлы отображаются с xyz.com/docs. Однако, когда я пытаюсь получить доступ к модулю через ingress через мое полное доменное имя, он выдает ошибку 404. Когда я получаю доступ к файлу test.txt, который находится внутри папки, я вижу содержимое файла, но он не отображает индексы, как при работе с опцией переадресации портов. Короче говоря, я могу получить доступ к модулю и получить доступ к файлам, но не могу отобразить их с помощью модуля autoindex, и с помощью того же модуля я могу отобразить индекс с опцией переадресации портов kubectl
kind: Ingress
metadata:
name: webdav-app
namespace: testing1
annotations:
cert-manager.io/issuer: "letsencrypt-staging"
#cert-manager.io/cluster-issuer: "letsencrypt-prod"
traefik.ingress.kubernetes.io/router.entrypoints: websecure
traefik.ingress.kubernetes.io/router.tls: "true"
spec:
tls:
- hosts:
- webdav.xyz.com
secretName: webdav-app-certificate
rules:
- host: webdav.xyz.com
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: webdav-app
port:
number: 80
Любая помощь будет высоко оценен.
Спасибо,
решение1
Хорошо, для меня решением был обходной путь. Я заметил, что к папке "webroot" (/var/www/html) можно получить доступ тем же способом, которым я хотел получить доступ к папке WebDAV (например, xyz.com/doc). Поэтому я создал символическую ссылку в корневой папке как /var/www/html/doc, и символическая ссылка doc указывает на требуемую папку doc. Опция FollowSymLinks также включена в конфигурации, что позволило мне это сделать.
Однако я до сих пор не уверен, почему это работает именно так с FQDN.