Некоторое время назад Я вам рассказывал об этой серии уроков, о том, как установить и настроить сервер для хостинга с высокими требованиями. Эта статья будет об установке и настройке Nginx + PHP con SpawnFastCGI:
Спаун_FastCGI:
Можно сказать, что это то, что соединяет Nginx с PHP, то есть даже если у них установлен пакет PHP5, если у них не установлен и не запущен Spawn_FastCGI, когда они открывают сайт в PHP, браузер загрузит файл, он не будет покажите им все, что .php был запрограммирован, потому что сервер не знает, как обрабатывать файлы .php, поэтому важно установить и настроить Spawn_FastCGI.
Если бы мы использовали Apache, это было бы так же просто, как установка пакета libapache2-mod-php5, но, поскольку мы используем Nginx, нам придется вместо этого установить пакет spawn-fcgi. Кроме того, в этом руководстве я объясню, как создать для него начальный скрипт в /etc/init.d/, чтобы вы могли управлять им более комфортно.
1. Установка:
Начнем с первого, установим Spawn-FastCGI и PHP из наших репозиториев.
Если на вашем сервере вы используете дистрибутив, такой как Debian, Ubuntu или какой-либо производный в терминале, вы должны ввести следующее и нажать Enter :
aptitude install spawn-fcgi php5-cgi php5-curl
2. Конфигурация:
На предыдущем шаге (когда мы установили Nginx) мы загрузили файл с именем nginx-spawn-fastcgi.tar.gz, который при разархивировании создал папку nginx-spawn-fastcgi в нашем доме, мы скопируем из нее файл. spawn-fastcgi в /etc/init.d/:
cp ~/nginx-spawn-fastcgi/spawn-fastcgi /etc/init.d/
Также нам понадобится исполняемый файл php-fastcgi в / usr / bin /
cp ~/nginx-spawn-fastcgi/php-fastcgi /usr/bin/
Отлично, у нас есть готовый файл, который позволит нам управлять spawn-fastcgi, а также исполняемый файл php-fastcgi, теперь мы собираемся запустить spawn-fastcgi:
/etc/init.d/spawn-fastcgi start
Это покажет нам что-то вроде: spawn-fcgi: ребенок успешно создан: PID: 3739
Теперь мы собираемся заменить наш файл /etc/nginx/sites-available/mywebsite.net на ~ / nginx-spawn-fastcgi / mywebsite_plus_php.net.
cp ~/nginx-spawn-fastcgi/mywebsite_plus_php.net /etc/nginx/sites-available/mywebsite.net
Почему? Просто потому, что наш предыдущий файл mywebsite.net не поддерживает PHP, то есть это только Nginx, а файл mywebsite_plus_php.net поддерживает PHP, то есть Nginx + PHP с использованием SpawnFastCGI.
Различий между этими файлами несколько, например:
- В строке 3 добавлен файл с поддержкой PHP index.php.
- Новая строка под №3, содержащая: fastcgi_index index.php;
- Несколько других новых строк, которые сообщают Nginx, как обрабатывать PHP.
- … .. в любом случае, вот фотография, которая поможет вам узнать различия между двумя файлами:
Файл mywebsite_plus_php.net - это виртуальный хост, который служит примером, то есть, другими словами, мы должны изменить его и установить наши конфигурации.
Мы должны изменить следующее:
- access_log (строка 3): это будет путь к файлу журнала доступа к этому сайту.
- error_log (строка 4): это будет путь файла журнала ошибок к этому сайту.
- server_name (línea 5): La URL, dominio que está hosteado en esa carpeta, por ejemplo, si se tratase del foro de DesdeLinux sería: server_name foro.desdelinux.net
- root (строка 6): путь к папке, где находятся файлы html, оставим его в / var / www /, так как это будет только тест
Готово, теперь перезапустим Nginx:
/etc/init.d/nginx restart
Чтобы убедиться, что наш Nginx правильно обрабатывает PHP, давайте скопируем файл phptest.php в размещенную папку, то есть ту, которая указана в строке № 6 файла mywebsite_plus_php.net (например, root / var / www /), предполагая, что если сайт размещен непосредственно в / var / www /, это будет:
cp ~/nginx-spawn-fastcgi/phptest.php /var/www/
Предположим, что в строке 5 нашего mywebsite_plus_php.net (то есть в строке server_name) мы сказали, что наш сайт - www.mysite.net, тогда мы должны получить доступ к www.mysite.net/phptest.php. Другими словами, идея состоит в том, чтобы получить доступ к файлу phptest.php из нашего браузера, и если появится следующее, то наш Nginx отлично связан с PHP:
Если этого не происходит, то есть браузер пытается загрузить файл .php ... это означает, что они сделали что-то не так, что они не заменили /etc/nginx/sites-available/mywebsite.net на ~ / nginx-spawn-fastcgi / mywebsite_plus_php.net… что вы забыли перезапустить Nginx с помощью /etc/init.d/nginx restart или что вы забыли запустить Spawn-FastCGI с помощью /etc/init.d/spawn-fastcgi start
Пока что руководство по связыванию Nginx с PHP с помощью SpawnFastCGI, нам нужны только MySQL и APC 🙂
Надеюсь, вам это интересно.
Если это четверть, почему на изображении написано 3? началось с 0 я думаю? отличный пост.
привет
1-й: Презентация
2-й: Nginx
3-е место: Nginx + PHP (Spawn_FastCGI)
????
Спасибо за чтение ^ _ ^
что случилось с частью 4 ???
и с последующим ?????
Привет
Было бы лучше, если бы вместо mysql вы использовали MariaDB, как вы должны знать, последний является форком первого, и уже есть разговоры, что это будет Mysql будущего (http://www.genbetadev.com/bases-de-datos/mariadb-sera-el-mysql-del-futuro), поскольку Mysql до некоторой степени бесплатен.
SkySQL, компания, предоставляющая услуги из бесплатных баз данных, оказала финансовую поддержку проекту MariaDB (http://www.genbetadev.com/bases-de-datos/mariadb-y-skysql-unen-fuerzas-para-llevar-a-mariadb-a-lo-mas-alto) и Google, который хочет перестать зависеть от Mysql, как это сделала и Википедия, и осуществит переход с MySQL 5.1 на MariaDB 10.0 с помощью, в частности, SkySQL, которые уже являются экспертами в этой области.
Салу2.
Привет,
Да, конечно, я знаю MariaDB и, собственно, мы уже говорили об этом: https://blog.desdelinux.net/tag/mariadb/
No obstante, ahora mismo estoy usando MySQL pues estos tutoriales los hago desde la experiencia particular que tuve al migrar DesdeLinux (con todos sus servicios) hacia otros servidores, en ese momento cambiamos la tecnología completamente y las tareas o cambios que tuve que afrontar no fueron pocos.
Прочтите этот мой комментарий с того момента: https://blog.desdelinux.net/el-blog-desdelinux-abandona-hostgator-y-pasa-a-gnutransfer/comment-page-1/#comment-81291
Финальная идея - да, действительно, перейти на MariaDB, но у меня не было времени провести соответствующие тесты 🙂
Спасибо за прочтение
Это руководство поможет мне установить zPanel X с NGINX, чтобы не перегружать мой сайт при переходе на GNUPanel VPS.
Рождественский подарок? Ждала всех поздравлений.
Спасибо, партнер 😀
Добавлено в избранное!
Кстати, у меня есть это сомнение и вопрос, действительно ли Nginx имеет большую производительность, чем Apache?
Привет!
Что ж, Apache можно сильно оптимизировать, но ... до сих пор Google и почти все мы согласны с тем, что Nginx потребляет намного меньше оперативной памяти, имеет неплохую производительность, хотя при настройке это не так просто.
Хороший КЗКГ ^ Гаара отличная информация для тех из нас, кто интересуется этим миром, вопрос, когда 4 пост