Задать вопрос

Почему nginx выдает php текстом?

На сервере есть такой путь к скрипту /var/www/example/sites/example.com/parser
Есть вот такое в nginx.conf
location ~*/parser/ {
    root /var/www/example/sites/example.com;
    error_log /var/www/example/sites/logs/nginx_error_parser.log;
    index index.php;
}


при переходе на example.com/parser/ - выдает исходный код файла index.php. Что нужно дописать, что-бы работал интерпретатор?
  • Вопрос задан
  • 573 просмотра
Подписаться 1 Оценить 17 комментариев
Помогут разобраться в теме Все курсы
  • Skillbox
    Веб-разработчик на PHP
    9 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 1
kowap
@kowap Автор вопроса
location /parser/ { 
     rewrite ^(.*)$  /parser/index.php permanent; 
}

 location ~ /parser/.+\.php$ {
     error_log /var/www/theinsider/sites/logs/nginx_error_parser.log;
     root /var/www/theinsider/sites/theinsider.ua;
     fastcgi_split_path_info ^(.+\.php)(/.+)$;
     include fastcgi_params;
     fastcgi_index index.php;
     fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
     fastcgi_intercept_errors on;
     fastcgi_buffers 64 64k;
     fastcgi_buffer_size 256k;
     fastcgi_pass unix:/var/run/php5-fpm.sock;
}
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
@Nc_Soft
Хендлер где? fastcgi_pass
Ответ написан
Fqyeh29
@Fqyeh29
↓ ИМХО ↓
А как вы пишите открывающие теги php? Если
<? 
/*Code*/
?>

то стандартно php не знает таких тегов, и не считает их кодом=> не выполняется. Надо в конфиге указать(точно не помню, но вроде оно там есть, просто раскомментировать надо)
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
от 200 000 до 290 000 ₽