@Valentine5

Как настроить nginx, чтобы на index.php перенаправлялись запросы не только {domain}/dfdfdf/dfdf, но и {domain}/DB.php?

Здравствуйте!

Делаю MVC -авторизацию на php, хочу настроить роутинг. Для этого нужно сделать так, чтобы запросы на любой url локального домена падали на index.php - единая точка входа. В nginx, как я понял из прочитанного, это настраивается через конфиг локльного домена.

установил соответствующее правило в location:

server {
	listen 80;
	listen [::]:80;

	server_name auth.local;

	root /var/www/auth;
	index index.php index.html;

	#location / {
		#try_files $uri $uri/ =404;
	#}
	
	location / {
    	try_files $uri /index.php$is_args$args;
	}

	location ~ \.php$ {
		include snippets/fastcgi-php.conf;
	
		# With php-fpm (or other unix sockets):
		fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
	#	# With php-cgi (or other tcp sockets):
	#	fastcgi_pass 127.0.0.1:9000;
	}

	location ~ /\.ht {
		deny all;
	}
}


url вида {domain}/dfdfdf/dfdf или {domain}/dfdfdfdfdf действительно успешно перенаправляются, а вот такие: {domain}/DB.php или {domain}/page.php не хотят перенаправляться. Как настроить перенаправление всех запросов на index.php для домена??
  • Вопрос задан
  • 64 просмотра
Решения вопроса 1
@AUser0
Чем больше знаю, тем лучше понимаю, как мало знаю.
В try_files уберите $uri, что-бы NGINX не обращал внимания на физически существующие файлы DB.php и т.д., а сразу открывал /index.php, что вам и нужно...
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы