LINUX.ORG.RU

История изменений

Исправление firkax, (текущая версия) :

Вопрос - где неправильно описана обработка location (ведь он же уже не как mvc сущность считается ) ? Может стоит в отдельный блок server запихать phpMyAdmin ? на выходе хотелось бы на том же порту [пока 80й] остаться и приложением mvc и phpmyadmiНОМ. В логах ошибок нет, в браузере пустая страница выводится белая как снег, аксес лог вот такой

Не знаю что за mvc сущность, но это явно понятие не вебсерверное и ни при чём тут.

Причина скорее всего вот в чём: если ты ставишь location с просто префиксом урла, без ^~, то у этого location-а будут отнимать запросы все регэксповые location-ы, в том числе те которые прописаны ниже. Так что первое location /phpmyadmin следует заменить на location ^~ /phpmyadmin. А сейчас у тебя все урлы .php, включая те что начинаются с /phpmyadmin/, попадают в локацию для приложения т.к. у неё приоритет больше. Не забудь так же продублировать внутрь неё запрет на обращение к /.ht

$request_filename - это путь к файлу уже включая root/alias, а ты его соединяешь с базовой директорией phpmyadmin - путь получится неверный и работать оно не будет, лучше заменить на $fastcgi_script_name как в приложении.

Вот этот код

	if (!-e $request_filename)
	{
		rewrite ^/(.*)$ /index.php last;
		break;
	}

    location / {
	index  index.php;
	    try_files $uri $uri/ /index.php;
    }
Делает два раза одно и то же - заменяет урлы к несуществующим файлам на /index.php. И, кстати, первый if опять действует и на phpmyadmin и скорее всего будет там что-то портить. Лучше if убрать, вроде и без него try_files сделает всё что надо.

Два отдельных server {} в одинаковым редиректом не нужны - можно оставить один и перечислить домены через пробел в server_name.

Исправление firkax, :

Вопрос - где неправильно описана обработка location (ведь он же уже не как mvc сущность считается ) ? Может стоит в отдельный блок server запихать phpMyAdmin ? на выходе хотелось бы на том же порту [пока 80й] остаться и приложением mvc и phpmyadmiНОМ. В логах ошибок нет, в браузере пустая страница выводится белая как снег, аксес лог вот такой

Не знаю что за mvc сущность, но это явно понятие не вебсерверное и ни при чём тут.

Причина скорее всего вот в чём: если ты ставишь location с просто префиксом урла, без ^~, то у этого location-а будут отнимать запросы все регэксповые location-ы, в том числе те которые прописаны ниже. Так что первое location /phpmyadmin следует заменить на location ^~ /phpmyadmin. А сейчас у тебя все урлы .php, включая те что начинаются с /phpmyadmin/, попадают в локацию для приложения т.к. у неё приоритет больше. Не забудь так же продублировать внутрь неё запрет на обращение к /.ht

$request_filename - это путь к файлу уже включая root/alias, а ты его соединяешь с базовой директорией phpmyadmin - путь получится неверный и работать оно не будет, лучше заменить на $fastcgi_script_name как в приложении.

Вот этот код

	if (!-e $request_filename)
	{
		rewrite ^/(.*)$ /index.php last;
		break;
	}

    location / {
	index  index.php;
	    try_files $uri $uri/ /index.php;
    }
Делает два раза одно и то же - заменяет урлы к несуществующим файлам на /index.php. И, кстати, первый if опять действует и на phpmyadmin и скорее всего будет там что-то портить. Лучше if убрать, вроде и без него try_files сделает всё что надо.

Два отдельный server {} в одинаковым редиректом не нужны - можно оставить один и перечислить домены через пробел в server_name.

Исправление firkax, :

Вопрос - где неправильно описана обработка location (ведь он же уже не как mvc сущность считается ) ? Может стоит в отдельный блок server запихать phpMyAdmin ? на выходе хотелось бы на том же порту [пока 80й] остаться и приложением mvc и phpmyadmiНОМ. В логах ошибок нет, в браузере пустая страница выводится белая как снег, аксес лог вот такой

Не знаю что за mvc сущность, но это явно понятие не вебсерверное и ни при чём тут.

Причина скорее всего вот в чём: если ты ставишь location с просто префиксом урла, без ^~, то у этого location-а будут отнимать запросы все регэксповые location-ы, в том числе те которые прописаны ниже. Так что первое location /phpmyadmin следует заменить на location ^~ /phpmyadmin. А сейчас у тебя все урлы .php, включая те что начинаются с /phpmyadmin/, попадают в локацию для приложения т.к. у неё приоритет больше. Не забудь так же продублировать внутрь неё запрет на обращение к /.ht

$request_filename - это путь к файлу уже включая root/alias, а ты его соединяешь с базовой директорией phpmyadmin - путь получится неверный и работать оно не будет, лучше заменить на $fastcgi_script_name как в приложении.

Вот этот код

	if (!-e $request_filename)
	{
		rewrite ^/(.*)$ /index.php last;
		break;
	}

    location / {
	index  index.php;
	    try_files $uri $uri/ /index.php;
    }
Делает два раза одно и то же - заменяет урлы к несуществующим файлам на /index.php. И, кстати, первый if опять действует и на phpmyadmin и скорее всего будет там что-то портить. Лучше if убрать, вроде и без него try_files сделает всё что надо.

Исходная версия firkax, :

Вопрос - где неправильно описана обработка location (ведь он же уже не как mvc сущность считается ) ? Может стоит в отдельный блок server запихать phpMyAdmin ? на выходе хотелось бы на том же порту [пока 80й] остаться и приложением mvc и phpmyadmiНОМ. В логах ошибок нет, в браузере пустая страница выводится белая как снег, аксес лог вот такой

Не знаю что за mvc сущность, но это явно понятие не вебсерверное и ни при чём тут.

Причина скорее всего вот в чём: если ты ставишь location с просто префиксом урла, без ^~, то у этого location-а будут отнимать запросы все регэксповые location-ы, в том числе те которые прописаны ниже. Так что первое location /phpmyadmin следует заменить на location ^~ /phpmyadmin. А сейчас у тебя все урлы .php, включая те что начинаются с /phpmyadmin/, попадают в локацию для приложения т.к. у неё приоритет больше.

$request_filename - это путь к файлу уже включая root/alias, а ты его соединяешь с базовой директорией phpmyadmin - путь получится неверный и работать оно не будет, лучше заменить на $fastcgi_script_name как в приложении.

Вот этот код

	if (!-e $request_filename)
	{
		rewrite ^/(.*)$ /index.php last;
		break;
	}

    location / {
	index  index.php;
	    try_files $uri $uri/ /index.php;
    }
Делает два раза одно и то же - заменяет урлы к несуществующим файлам на /index.php. И, кстати, первый if опять действует и на phpmyadmin и скорее всего будет там что-то портить. Лучше if убрать, вроде и без него try_files сделает всё что надо.