Перенос сайта с апач на Nginx

D
На сайте с 28.06.2008
Offline
1114
751

Сайт самопис, кто писал связи нет. Главная открывается, но такое впечатление что PHP не обрабатывается, вижу кусками код пхп и переход по внутренним ничего не дает.

Вот кусок конфига Nginx что сейчас

        root /var/www/site.ru;
        index index.php;

        # Support Clean (aka Search Engine Friendly) URLs
        location / {
                try_files $uri $uri/ /index.php?$args;
        }

        # php files
        location ~ \.php$ {
                include fastcgi_params;
                fastcgi_buffers 16 16k; 
                fastcgi_buffer_size 32k;
                fastcgi_index index.php;
                fastcgi_read_timeout 30;
                fastcgi_pass unix:/run/php/php7.4-fpm.sock;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        }

Вот директивы .htaccess

DirectoryIndex index.php
Options -Indexes

php_flag display_errors off

RewriteEngine On
RewriteBase /

# удаление приставки www
RewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
RewriteRule ^/?(.*) http://%1/$1 [L,R=permanent]

RewriteCond %{HTTP_HOST} (.*)
RewriteCond %{REQUEST_URI} /$ [NC]
RewriteRule ^(.*)(/)$ $1 [L,R=301]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /index.php [QSA,L]  

Пробовал их конвертнуть через https://winginx.com/ru/htaccess   не помогло, при переходе по ссылкам начали скачиваться файлы

Если не вносить правки которые предлагает конверте, то переход на любой пхп файл (например пхп инфо) - белая страница

Помогите, что нужно поправить?

W1
На сайте с 22.01.2021
Offline
306
#1
Dram :
такое впечатление что PHP не обрабатывается

Проверить же просто, без всяких впечатлений и привязки к локациям.
Нужно создать в корне сайта php-файл с произвольным именем и выводом через echo любой строки, и сделать к нему прямой запрос.  Отделить, так сказать, мух от котлет. Задачи нужно решать последовательно, а не валить всё в кучу.

Мой форум - https://webinfo.guru –Там я всегда на связи
T7
На сайте с 19.09.2018
Offline
63
#2
Dram :
Вот кусок конфига Nginx что сейчас

А кроме этого куска есть что? Чисто такой конф - рабочий.

Dram :
вижу кусками код пхп

Такое поведение, вероятно, если шорт таг в скрипте.

Dram :
белая страница
/var/log/nginx/error.log
W1
На сайте с 22.01.2021
Offline
306
#3
timo-71 #:
Такое поведение, вероятно, если шорт таг в скрипте.

Всяко может быть. Может быть и шорт тег, а может быть, ещё и нет нужных серверных переменных (касательно перехода по ссылкам).

D
На сайте с 28.06.2008
Offline
1114
#4
Всем спасибо, вы правы!! Шорт тег был выключен.
E
На сайте с 01.10.2017
Offline
124
#5
Dram :
Вот директивы .htaccess

Там используется единая точка входа, запускаемая обычным по нынешним меркам способом. Если отбросить условие для проверки обращения к каталогу, то можно использовать такой именованный location:

try_files $uri @php;

location @php {
    # ваши параметры запуска
}

Если условие для проверки обращения к каталогу все-таки нужно, добавьте в try_files $uri/, задайте индексный файл и т.п.

Домены на продажу: https://p20.ru/collection/domains-for-sale
E
На сайте с 01.10.2017
Offline
124
#6
Т.к. файл единой точки входа находится в корне, файлы с расширением .php тоже нужно передавать на обработку PHP. А показанный мной способ в чистом виде можно использовать для более продвинутой конфигурации, когда в корневом каталоге находятся только файлы, предназначенные для прямой выдачи Web-сервером. При наличии такой возможности со стороны Web-сервера файл единой точки входа обычно легко убирается из корневого каталога, если это не какая-нибудь любительская CMS, создатели которой о таком простом действии даже не подумали.
Mik Foxi
На сайте с 02.03.2011
Offline
1213
#7
Dram #:
Всем спасибо, вы правы!! Шорт тег был выключен.
заканчивался 2021, вебмастера продолжали юзать шорт тег пхп...
Антибот, антиспам, веб фаервол, защита от накрутки поведенческих: https://antibot.cloud/ (Зеркало: https://антибот.рф/ ) Форум на замену серчу: https://foxi.biz/
W1
На сайте с 22.01.2021
Offline
306
#8
Mik Foxi #:
заканчивался 2021, вебмастера продолжали юзать шорт тег пхп...

У ТС старый самопис. Проще включить директиву в конфигурации, чем перелопачивать все скрипты.

Aisamiery
На сайте с 12.04.2015
Offline
319
#9
webinfo #:

У ТС старый самопис. Проще включить директиву в конфигурации, чем перелопачивать все скрипты.

ну в шторме переименовать во всем проекте <? в <?php я думаю не составит проблем

Разработка проектов на Symfony, Laravel, 1C-Bitrix, UMI.CMS, OctoberCMS
W1
На сайте с 22.01.2021
Offline
306
#10
Aisamiery #:

ну в шторме переименовать во всем проекте <? в <?php я думаю не составит проблем

А зачем? Это же "домашний" проект, не предназначенный для продажи. Всё равно проще прописать директиву.
И кстати, вспомним Битрикс ;).

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий