У меня есть php5 .6 приложение, работающее на kubernetes и выставленное с помощью входа. Php приложение содержит nginx и php5 .6 fpm. Когда я открываю сервис, используя kubectl port-forward <service> 9090:80
localhost: 9090 / admin, перенаправьте на страницу «localhost: 9090 / admin / index / login», как и ожидалось. Это правило перенаправления не определено в файле nginx. Это происходит внутри приложения php. Но когда я выставляю сервис, используя вход, и нажимаю «www.demo.example.com/admin», он перенаправляет на «www.demo.example.com/admin/index/login», но выдает ошибку redirected you too many times
. Ниже находится входной файл, который я использую. Я пытаюсь понять, почему это происходит, но безуспешно. Нет ошибки в error.log, но в access.log "GET /admin/index/login HTTP/1.1" 301 31 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/<ip> Safari/537.36"
kind: Ingress
metadata:
name: php-web-ingress
labels:
name: php-web-ingress
annotations:
kubernetes.io/ingress.class: nginx
spec:
rules:
- host: "www.demo.example.com"
http:
paths:
- path: /
backend:
serviceName: www-service
servicePort: 80
- path: /wp-admin
backend:
serviceName: wordpress
servicePort: 80
- path: /admin/
backend:
serviceName: php-web-service
servicePort: 80
-----------------------------------------------
Nginx.conf
server {
listen 80;
server_name www.demo.example.com;
error_log /var/log/nginx/error.log;
access_log /var/log/nginx/access.log;
root /sites/www/public/;
location / {
try_files $uri $uri/ /index.php?q=$uri&$args;
}
location ~ \.php$ {
fastcgi_pass unix:/var/run/php/php5.6-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_script_name;
include fastcgi_params;
}
}