Преди известно време Казах ви за тази поредица уроци, за това как да инсталирате и конфигурирате сървър за хостинг с голямо търсене. Тази статия ще бъде за инсталиране и конфигуриране Nginx + PHP с SpawnFastCGI:
Spawn_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 или някаква производна в терминала, трябва да поставите следното и да натиснете Въведете :
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 е vhost, който служи като пример, т.е. с други думи, ние трябва да го модифицираме и да установим нашите конфигурации.
Трябва да променим следното:
- access_log (ред 3): Това ще бъде пътят на регистрационния файл за достъп до този сайт
- error_log (ред 4): Това ще бъде пътят на регистрационния файл за грешки към този сайт
- server_name (ред 5): URL адресът, домейнът, който се хоства в тази папка, например, ако беше форумът DesdeLinux ще бъде: име на сървър_на форум.desdelinux. Net
- корен (ред 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 (т.е. реда на сървърното име) ние казахме, че нашият сайт е 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 рестартиране или че са забравили да стартират 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/
В момента обаче използвам MySQL, защото правя тези уроци от конкретния опит, който имах при мигрирането. DesdeLinux (с всичките му услуги) към други сървъри, по това време променихме напълно технологията и задачите или промените, с които трябваше да се сблъскам, не бяха малко.
Прочетете този мой коментар от този момент: 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 консумира много по-малко RAM, има не по-малка производителност, въпреки че не е толкова просто при конфигуриране.
Добър KZKG ^ Gaara отлична информация за онези от нас, които се интересуват от този свят, въпрос, кога четвъртия пост 😀