내 Wordpress lemp 설치에 재미있는 문제가 있습니다. 문제는 다음과 같습니다.
example.com/category-of-shoes
해당 문제에 관한 게시물로 연결되는 URL이 있다고 가정해 보겠습니다 . 예를 들어 404 응답을 받는 대신 존재하지 않는 게시물/페이지를 입력하면 example.com/category
으로 반송됩니다 example.com/category-of-shoes
.
여기서 무엇이 문제가 될 수 있습니까? 제가 관리하는 일부 사이트에서 이런 일이 일어나고 있는데 누군가가 이를 악용할 수 있을까 두렵습니다. 또한 이것은 cgi.fix_pathinfo와 관련이 있습니까?
서버에 대한 내 Conf 파일:
upstream php {
server 127.0.0.1:9000;
}
server {
listen 80;
set $host_path "/var/www/vhosts/example.com/";
access_log /var/log/nginx/example.com-access.log;
error_log /var/log/nginx/example.com-error.log error;
server_name example.com;
root $host_path;
charset utf-8;
index index.php;
location ~ \.php {
fastcgi_split_path_info ^(.+\.php)(.*)$;
fastcgi_pass 127.0.0.1:9000;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param PATH_TRANSLATED $document_root$fastcgi_script_name;
}
location / {
try_files $uri $uri/ /index.php$is_args$args;
index index.php;
}
location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ {
expires max;
log_not_found off;
}
error_page 404 /404.html;
error_page 500 502 503 504 /static.html;
}
또한 사람들이 nginx의 WP Permalink "다시 쓰기"에 대해 제공하는 모든 옵션에 대해 약간 혼란스럽습니다. 내가 보는 것의 대부분은 블록 try_files $uri $uri/ /index.php$is_args$args;
내부를 중심으로 이루어집니다 location /
. 누군가 나에게 이 문제를 설명해 줄 수 있나요?