nginx скачивает php файлы вместо выполнения
Nginx и служит.php файлы в виде загрузок, вместо их выполнения
мой /etc/nginx / sites-доступно / по умолчанию
. Другие» расположение » комментируются (#)
18 ответов:
Edit /etc/nginx/sites-available/default
раскомментируйте обе линии прослушивания, чтобы nginx прослушивал порт 80 IPv4 и IPv6.
оставить server_name только
добавить index.php до index строка
раскомментировать location
Edit /etc/php5/fpm/php.ini и убедится cgi.fix_pathinfo установлен к 0
перезагрузите nginx и php5-fpm (если вы не знаете, как это сделать, перезагрузите сервер)
я только начал использовать Linux неделю назад, так что я действительно надеюсь помочь вам в этом. Я использую текстовый редактор Nano для редактирования файлов. запустите apt-get install nano, если у вас его нет. Google на нем, чтобы узнать больше.
вам нужно добавить это в /etc/nginx/sites-enabled / default для выполнения php-файлов на сервере Nginx:
У меня была аналогичная проблема, которая была решена путем очистка кэша браузера (также отлично работал с другим браузером).
обновить nginx config / etc/nginx/sites-доступно / по умолчанию или ваш файл конфигурации
Если вы используете php7 используйте это
Если вы используете php5 используйте это
посетите здесь для получения полной информации здесь
у меня была такая же проблема и ни один из ответов решить проблему.
чтобы проверить файл конфигурации в /etc/nginx/sites-available / default.
Он дал мне эти ошибки:
поэтому я зашел в конфигурационный файл и на последней строке там было
Я раскомментировал, снова запустил тестовую команду, и она сработала
1) MyApp file
vi / etc/nginx/sites-available / myApp
2) Настройка cgi.fix_pathinfo
установить cgi.fix_pathinfo для 0
PHP5 / etc/php5/fpm / php.ini
PHP7 /etc/php/7.0/fpm / php.ini
3) перезапустите службы
php5 sudo service php5-fpm restart
php7 sudo service php7.0-fpm restart
Если какой-либо из предложенных ответов не работает, попробуйте следующее:
1.исправить ВСП.conf в etc/php5/fpm / pool.д:
listen = 127.0.0.1:9000;(delete all line contain listen= )
2.исправить это nginx.conf в usr / local / nginx / conf:
remove server block server<> (if exist) in block html<> because we use server<> in default (config file in etc/nginx/site-available) which was included in nginx.conf.
3. исправить файл по умолчанию в etc/nginx / site-available
4.перезапустите службу nginx
5.перезапустить php сервис
6.наслаждайтесь
создайте любой php файл в /usr/share/nginx/html и запустите в «имя_сервера / имя_файла.РНР» (имя_сервера зависит от вашей конфигурации,обычно это localhost, имя_файла.php-это имя файла, который создан в /usr/share/nginx / html ).
Я использую Ubuntu 14.04
ответ выше, казалось, комментировать слишком много для решения, которое я достиг. Вот как выглядел мой файл:
надеюсь, что это поможет некоторым людям, которые разочарованы в воскресенье днем (c:
на мой пользовательский файл конфигурации, например etc/nginx/sites-available/example.com.conf
добавлять к /etc/nginx/sites-available/default не работает для меня.
что работало для меня с Ubuntu 16.04, и php7 удалял эту строку
после этого он перестал загружать php-файлы.
для тех, у кого есть такая же проблема с PHP 7, это то, что я сделал, чтобы nginx правильно выполнял php-файлы в CentOS 7, размещенные здесь, поэтому в случае, если у кого-то есть такая же проблема:
следуйте шаг за шагом этот документ на Цифровой Океан.
открыть /etc/nginx/conf.d/default.conf (по умолчанию у меня нет сайтов-включен или сайты-доступны, вы можете редактировать соответственно).
редактировать location параметр as ниже:
последнее, но самое главное, очистить кэш браузера или работает в incognito (Chrome) или Private Browsing (Firefox) etc.
надеюсь, что это полезно и удачи в кодировании
sudo vi / etc/nginx/sites-доступно / по умолчанию:
Если что-то еще не поможет вам. И, возможно, ранее вы установили apache2 с информация.тестовый файл php. Просто очистите данные приложения (кэш,cookie) для localhost.
проверьте расширение файла конфигурации nginx *.конф.
например: /etc/nginx / conf.d / myfoo.conf
У меня такая же ситуация. После того, как я переименую мой конфигурационный файл из myfoo в myfoo.конф, это исправлено. Не забудьте перезапустить nginx после переименования.
сначала надо Remove cache в браузере
затем откройте терминал и выполните следующую команду:
затем добавьте следующий код в тег default file:
если какое-либо несоответствие просто исправить и перезапустить Nginx с терминала по следующей команде
sudo systemctl перезапустить nginx
для меня это была линия: fastcgi_pass unix:/var/run/php5-fpm.носок;
, который должен был быть просто: fastcgi_pass unix:/run / php5-fpm.носок;
.
Другие «местоположение» прокомментированы (#)
Отредактируйте /etc/nginx/sites-available/default
Раскомментируйте обе строки прослушивания, чтобы заставить nginx прослушивать порт 80 IPv4 и IPv6.
Оставьте server_name покое
Добавьте index.php к строке index
Раскомментировать location
Отредактируйте /etc/php5/fpm/php.ini и убедитесь, что cgi.fix_pathinfo имеет значение 0
Перезапустите nginx и php5-fpm sudo service nginx restart && sudo service php5-fpm restart Перезапустите nginx и sudo service nginx restart && sudo service php5-fpm restart
Я только начал использовать Linux неделю назад, поэтому я очень надеюсь помочь вам в этом. Я использую текстовый редактор Nano для редактирования файлов. запустите apt-get install nano, если у вас его нет. Google на это, чтобы узнать больше.
Вам нужно добавить это в /etc/nginx/sites-enabled/default для запуска файлов php на Nginx Server:
У меня была аналогичная проблема, которая была решена с помощью освобождения кеша браузера (также отлично работала с другим браузером).
Обновите конфигурацию nginx/etc/nginx/sites-available/default или ваш файл конфигурации
если вы используете php7 используйте это
если вы используете php5 используйте это
Посетите здесь для более подробной информации Подробнее здесь
У меня была такая же проблема, и ни один из ответов не разрешил проблему.
Он дал мне эти ошибки:
Итак, я зашел в конфигурационный файл, а на последней строке был
Я раскоментировал, снова запустил тестовую команду и работал
Это работало для меня.
1) Файл MyApp
2) Настроить cgi.fix_pathinfo
Установите cgi.fix_pathinfo в 0
PHP5
/etc/php 5/fpm/php.ini
PHP7
/etc/php/ 7.0/fpm/php.ini
3) Службы перезагрузки
php5 sudo service php5-fpm restart
php7 sudo service php7.0-fpm restart
Если какой-либо из предложенных ответов не работает, попробуйте следующее:
1.fix www.conf в etc/php5/fpm/pool.d:
listen = 127.0.0.1:9000;(delete all line contain listen= )
2.fix nginx.conf в usr/local/nginx/conf:
remove server block server<> (if exist) in block html<> because we use server<> in default (config file in etc/nginx/site-available) which was included in nginx.conf.
3. исправить файл по умолчанию в etc/nginx/site-available
\.php$ <
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi_params;
>
Служба 4.restart nginx
5.restart php service
6.Enjoy
Я использую Ubuntu 14.04
Я видел много решений выше, и многие из них работали правильно для меня, но я не понимал, что они делают, и боялся просто скопировать код, в частности, fastcgi. Так вот мои 2 цента,
Для некоторых серверов, таких как Apache, имеется встроенная поддержка для интерпретации PHP и, следовательно, нет необходимости в CGI.
Эта цифровая океанская ссылка довольно хорошо объясняет шаги по установке FPM, и я не пишу шаги, необходимые для решения проблемы загрузки php файлов вместо рендеринга, так как остальные ответы ИМХО довольно хороши.
Nginx и служит.php файлы в виде загрузок, вместо их выполнения
мой / etc/nginx/sites-доступно / по умолчанию
. Другие» местоположение » комментируются (#)
18 ответов
редактировать /etc/nginx/sites-available/default
раскомментируйте обе линии прослушивания, чтобы nginx прослушивал порт 80 IPv4 и IPv6.
оставить server_name только
добавить index.php до index строка
раскомментировать location
редактировать /etc/php5/fpm/php.ini и убедится cgi.fix_pathinfo установлен к 0
перезапустите nginx и php5-fpm (если вы не знаете, как это сделать, перезапустите сервер)
я только начал использовать Linux неделю назад, поэтому я действительно надеюсь помочь вам в этом. Я использую текстовый редактор Nano для редактирования файлов. запустите apt-get install nano, если у вас его нет. Google на нем, чтобы узнать больше.
вам нужно добавить это в /etc/nginx/sites-enabled / default для выполнения php-файлов на сервере Nginx:
У меня была аналогичная проблема, которая была решена путем очистка кэша браузера (также отлично работал с другим браузером).
обновить nginx config / etc/nginx / sites-доступно / по умолчанию или ваш файл конфигурации
Если вы используете php7, используйте это
Если вы используете php5, используйте это
посетите здесь для всех деталях здесь
у меня была такая же проблема и ни один из ответов решить проблему.
чтобы проверить файл конфигурации в /etc/nginx/sites-available / default.
Он дал мне эти ошибки:
Так я зашел в конфигурационный файл и на последней строке там было
Я раскомментировал, снова запустил тестовую команду, и она сработала
этот workded для меня.
1) MyApp файл
vi / etc/nginx/сайты-доступно / myApp
пользователи и php5
2) Настройка cgi.fix_pathinfo
установить cgi.fix_pathinfo для 0
РНР5 файл /etc/php5 с/ФПМ/РНР.ini
PHP7 / etc/php/7.0/fpm / php.ini
3) перезапустите службы
рнр5 sudo service php5-fpm restart
php7 sudo service php7.0-fpm restart
Если какой-либо из предложенных ответов не работает, попробуйте следующее:
1.исправить ВСП.Conf в файле/etc / php5 с/ФПМ/бассейн.д:
listen = 127.0.0.1:9000;(delete all line contain listen= )
2.исправить это nginx.conf в usr / local/nginx / conf:
remove server block server<> (if exist) in block html<> because we use server<> in default (config file in etc/nginx/site-available) which was included in nginx.conf.
3. исправить файл по умолчанию в etc/nginx / site-available
4.перезапустите службу nginx
5.перезапустите службу php
6.наслаждайтесь
создайте любой файл php в /usr/share/nginx/html и запустите в «имя_сервера / имя_файла.РНР» (имя_сервера зависит от вашей конфигурации,обычно это localhost, имя_файла.php-это имя файла, созданного в /usr/share/nginx / html ).
Я использую Ubuntu 14.04
ответ выше, казалось, комментировал слишком много для решения, которого я достиг. Вот как выглядел мой файл:
/etc/nginx/sites-доступно / по умолчанию
надеюсь, это поможет некоторым людям, которые разочарованы в воскресенье днем (c:
моим решением было добавить
на мой пользовательский файл конфигурации, например etc/nginx/sites-available/example.com.conf
добавлять к /etc/nginx/sites-available/default не работал на меня.
что работало для меня с Ubuntu 16.04, и php7 удалял эту строку
после этого он прекратил загрузку php-файлов.
для тех, кто имеет ту же проблему с PHP 7, это то, что я сделал, чтобы nginx правильно выполнять php-файлы в CentOS 7, размещенные здесь, так что в случае кого-либо с той же проблемой:
следуйте шаг за шагом этот документ на Цифровой Океан.
открыть /etc/nginx/conf.d/default.conf (по умолчанию у меня нет сайтов-включен или сайты-доступны, вы можете редактировать соответственно).
sudo vi / etc/nginx/sites-доступно / по умолчанию:
Если ничего не поможет вам. И, возможно, ранее вы установили apache2 с информация.тестовый файл php. Просто очистите данные приложения (кэш,cookie) для localhost.
проверьте расширение файла конфигурации nginx *.conf.
например: /etc/nginx / conf.д/myfoo.conf
У меня такая же ситуация. После переименования файла конфигурации myfoo в myfoo.conf, она исправлена. Не забудьте перезапустить nginx после переименования.
сначала надо Remove cache в браузере
затем откройте терминал и выполните следующую команду:
затем добавьте следующий код в тег :
если какое-либо несоответствие просто исправление и перезапуск Nginx из терминала по следующей команде
sudo systemctl перезапустить nginx
для меня это была линия: fastcgi_pass unix:/var/run/php5-fpm.носок;
, который должен был быть просто: fastcgi_pass unix:/run / php5-fpm.носок;
Others «location» are commented.
27 Answers 27
Edit /etc/nginx/sites-available/default
Uncomment both listen lines to make nginx listen on port 80 IPv4 and IPv6.
Leave server_name alone
Add index.php to the index line
Uncomment location
Edit /etc/php5/fpm/php.ini and make sure cgi.fix_pathinfo is set to 0
Restart nginx and php5-fpm sudo service nginx restart && sudo service php5-fpm restart
I have just started using Linux a week ago, so I really hope to help you on this. I am using nano text editor to edit the files. run apt-get install nano if you don’t have it. Google on it to know more.
I had similar problem which was resolved by emptying the browser cache (also worked fine with different browser).
You need to add this to /etc/nginx/sites-enabled/default to execute php files on Nginx Server:
Update nginx config /etc/nginx/sites-available/default or your config file
if you are using php7 use this
if you are using php5 use this
Visit here for complete detail Detail here
I see a lot of solutions above and many worked correctly for me, but I didn’t understand what they were doing and was worried of just copy pasting the code, specifically, fastcgi. So here are my 2 cents,
For some, servers like Apache, there is built in support to interpret PHP and thus no need for a CGI.
This digital ocean link, explains the steps to install FPM pretty well and I am not writing the steps needed to solve the issue of php files getting downloaded instead of rendering since the other answers IMHO pretty good.
Мой / etc / nginx / sites-available / default
. Другие «местоположение» прокомментированы (#)
редактировать /etc/nginx/sites-available/default
Раскомментируйте обе строки прослушивания, чтобы заставить nginx прослушивать порт 80 IPv4 и IPv6.
Оставь в server_name покое
Добавить index.php в index строку
Раскоментируйте location
Отредактируйте /etc/php5/fpm/php.ini и убедитесь, что cgi.fix_pathinfo установлено 0
Перезапустите nginx и php5-fpm. sudo service nginx restart && sudo service php5-fpm restart
Я только начал использовать Linux неделю назад, поэтому я очень надеюсь помочь вам в этом. Я использую текстовый редактор Nano для редактирования файлов. запустите apt-get install nano, если у вас его нет. Google на это, чтобы узнать больше.
Вам нужно добавить это в / etc / nginx / sites-enabled / default для запуска файлов php на Nginx Server:
У меня была похожая проблема, которая была решена путем очистки кэша браузера (также отлично работал с другим браузером).
Обновите конфигурацию nginx / etc / nginx / sites-available / default или ваш файл конфигурации
если вы используете php7 используйте это
если вы используете php5 используйте это
Посетите здесь для более подробной информации Подробнее здесь
Для некоторых серверов, таких как Apache, имеется встроенная поддержка для интерпретации PHP и, следовательно, нет необходимости в CGI.
Эта цифровая океанская ссылка довольно хорошо объясняет шаги по установке FPM, и я не пишу шаги, необходимые для решения проблемы загрузки php-файлов вместо рендеринга, так как остальные ответы ИМХО довольно хороши.