Для того, чтобы убрать index.php в корне сайта на сервере, например, Debian+Nginx+PHP7.2, без использования Apache и .htaccess, необходимо в конфигурационный файл nginx добавить следующие директивы, между фигурными скобками конфигурации сервера:
server{ if ($request_uri ~* "^(.*/)index\.php$") {
return 301 $1;
} location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php7.2-fpm.sock;
fastcgi_read_timeout 300;
index index.php;
}
location / {
index index.php index.html index.htm;
try_files $uri $uri/ /index.php index.php;
}
}
После чего перезагрузите PHP и nginx
перезагрузка php debian
php7.2-fpm restart
перезагрузка nginx
/etc/init.d/nginx restart
Теперь в адресной строке можно написать так:
https://site.org/
и если в корне лежит index.php – он будет исполнен интерпретатором PHP