tôi loại bỏ .php
tập tin đính kèm trong ứng dụng, nhưng lần này các trang hành động của ứng dụng không hoạt động. Bởi vì tôi đã loại bỏ .php
hậu tố ở cuối các tập tin.
Ví dụ, tôi muốn gửi dữ liệu đến một sưu tầm
tệp bằng AJAX nhưng tôi nhận được 302 lượt trả về.
https://panel.example.com/application/collect
Không có vấn đề với các tập tin khác của ứng dụng.
https://panel.example.com/login
*Phiên bản không viết lại:*
https://panel.example.com/index.php?cmd=login
Làm cách nào để khắc phục sự cố chuyển hướng 302 trong các tệp đang hoạt động của ứng dụng? Tôi đang làm sai ở đâu?
địa điểm / {
try_files $uri $uri/ /index.php?$args;
}
viết lại ^/([^/]+)/([^/]+)?$ /index.php?cmd=$1&scd=$2 break;
viết lại ^/([^/]+)/?$ /index.php?cmd=$1 break;
Mã trên không được bao gồm trong tập tin cấu hình đầy đủ. Tôi đã tải lên tệp sạch.
CURL bằng CMD;
C:\Users\emres>curl -I https://panel.example.com/application/collect
Đã tìm thấy HTTP/1.1 302
Máy chủ: nginx/1.18.0
Ngày: CN, 02/01/2022 12:32:57 GMT
Loại nội dung: văn bản/html; bộ ký tự = utf-8
Kết nối: giữ nguyên
Đặt-Cookie: PHPSESSID=pvn7l2g8babucp9a9mkuo5ll0v; đường dẫn =/; miền=.example.com
Hết hạn: Thứ năm, ngày 19 tháng 11 năm 1981 08:52:00 GMT
Kiểm soát bộ đệm: không lưu trữ, không có bộ đệm, phải xác thực lại
Pragma: không có bộ đệm
Access-Control-Max-Tuổi: 86400
Kiểm soát truy cập-Cho phép-Thông tin xác thực: đúng
Vị trí: https://panel.example.com/login?returnBack=http://panel.example.com/application/collect
lỗi.log:
dọn dẹp.
truy cập.log:
192.168.1.145 - - [02/Jan/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, như Gecko) Chrome/96.0.4664.93 Safari/537.36 OPR/82.0.4227.33"
192.168.1.145 - - [02/Jan/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, như Gecko) Chrome/96.0.4664.93 Safari/537.36 OPR/82.0.4227.33"
192.168.1.145 - - [02/Jan/2022:15:36:22 +0300] "NHẬN /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, như Gecko) Chrome/96.0.4664.93 Safari/ 537.36OPR/82.0.4227.33"
192.168.1.145 - - [02/Jan/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, như Gecko) Chrome/96.0.4664.93 Safari/537.36 OPR/82.0.4227.33"
192.168.1.145 - - [02/Jan/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, như Gecko) Chrome/96.0 .4664.93 Safari/537.36 OPR/82.0.4227.33"
Nginx: 1.18
Tôi nghĩ rằng nó phát hiện đường dẫn "ứng dụng/thu thập" theo cách khác. Nó phát hiện ra nó như là đăng kí
vì cmd
và sưu tầm
vì scd
cho chỉ mục.php
Bởi vì tôi có thể truy cập trang này:
https://panel.example.com/application/microServices/web
- nhưng, https://panel.example.com/application/collect
không thể truy cập. Tôi nghĩ rằng nó ảnh hưởng đến việc viết lại.