Мне пришлось изменить конфигурацию NGINX, чтобы разрешить получение статических файлов из другой папки.
server {
listen 80;
server_name app.test;
root "/home/vagrant/app/public";
index index.html index.htm index.php;
charset utf-8;
location ~ (.*.css|.*.js|.*.png|.*.jpg|.*.gif|.*.svg) {
alias /home/vagrant/app$request_uri;
}
location / {
try_files $uri $uri/ /index.php?$args;
}
sendfile off;
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_buffers 4 16k;
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
}
location ~ /\.ht {
deny all;
}
}
Часть, которую я добавил, была location .*.css
и т.д., где он в основном соответствует этим расширениям файлов, и если он их находит, он обслуживает их непосредственно из определенной папки, отличной от основной папки проекта.
В противном случае я хочу, чтобы он отправлял запросы PHP в основное приложение проекта, следовательно, расположение /.
Он работает нормально, но проблема в том, что он показывает URL как http://app.test/index.php/
всякий раз, когда я пытаюсь перейти к http://app.test/
, он не делал этого до того, как я добавил псевдоним, поэтому мне интересно, может ли псевдоним быть причиной этого и как я могу избавиться от добавленного index.php
. Заранее спасибо :)