я удаляю .php
вложение файла в приложении, но в этот раз страницы действий приложения не работают. Потому что я удалил .php
суффикс в конце файлов.
Например, я хочу отправить данные в собирать
файл с AJAX, но я получаю 302 возврата.
https://panel.example.com/application/collect
С другими файлами приложения проблем нет.
https://panel.example.com/логин
*Версия без перезаписи:*
https://panel.example.com/index.php?cmd=логин
Как исправить проблему перенаправления 302 в рабочих файлах приложения? Где я делаю неправильно?
место расположения / {
try_files $uri $uri/ /index.php?$args;
}
переписать ^/([^/]+)/([^/]+)?$ /index.php?cmd=$1&scd=$2 break;
переписать ^/([^/]+)/?$ /index.php?cmd=$1 break;
Вышеупомянутый код не включен в полный файл конфигурации. Я загрузил чистый файл.
СВЕРНУТЬ по CMD;
C:\Users\emres>curl -I https://panel.example.com/application/collect
HTTP/1.1 302 Найдено
Сервер: nginx/1.18.0
Дата: воскресенье, 02 января 2022 г., 12:32:57 по Гринвичу
Тип содержимого: текст/html; кодировка = utf-8
Соединение: Keep-alive
Set-Cookie: PHPSESSID=pvn7l2g8babucp9a9mkuo5ll0v; путь=/; домен=.example.com
Истекает: четверг, 19 ноября 1981 г., 08:52:00 по Гринвичу.
Cache-Control: без хранения, без кеша, с обязательной повторной проверкой
Прагма: без кеша
Максимальный возраст контроля доступа: 86400
Access-Control-Allow-Credentials: правда
Расположение: https://panel.example.com/login?returnBack=http://panel.example.com/application/collect.
журнал ошибок:
чистый.
доступ.лог:
192.168.1.145 - - [02/янв/2022:15:36:22 +0300] "GET /application/collect HTTP/1.1" 302 5 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/ 537,36 (KHTML, как Gecko) Chrome/96.0.4664.93 Safari/537.36 OPR/82.0.4227.33"
192.168.1.145 - - [02/янв/2022:15:36:22 +0300] "GET /login?returnBack=https://panel.example.com/application/collect HTTP/1.1" 200 3977 "-" " Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/96.0.4664.93 Safari/537.36 OPR/82.0.4227.33"
192.168.1.145 - - [02/янв/2022:15:36:22 +0300] "GET /libs/out/general-js.php?v=61d19c464ab3b HTTP/1.1" 200 390 "https://panel.example .com/login?returnBack=https://panel.example.com/application/collect" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/96.0.4664.93 Safari/ 537,36 оп/82.0.4227.33"
192.168.1.145 - - [02/янв/2022:15:36:22 +0300] "POST /application/collect HTTP/1.1" 302 5 "https://panel.example.com/login?returnBack=https:/ /panel.example.com/application/collect" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/96.0.4664.93 Safari/537.36 OPR/82.0.4227.33"
192.168.1.145 - - [02/янв/2022:15:36:22 +0300] "GET /login?returnBackUnit=https://panel.example.com/application/collect HTTP/1.1" 200 3981 "https:/ /panel.example.com/login?returnBack=https://panel.example.com/application/collect" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, как Gecko) Chrome/96.0 .4664.93 Сафари/537.36 OPR/82.0.4227.33"
Нгинкс: 1.18
Я думаю, что он по-разному определяет путь «приложение/сбор». Он определяет это как применение
за команда
и собирать
за СКД
для index.php
Потому что я могу получить доступ к этой странице:
https://panel.example.com/application/microServices/веб
- но, https://panel.example.com/application/collect
не возможно получить доступ. Я думаю, это влияет на перезапись.