Ինչպես տեղադրել և կարգավորել Nginx-ը PHP-FPM-ով CentOS 8-ում
Այս ձեռնարկը գոյություն ունի ՕՀ-ի այս տարբերակների համար
- CentOS 8
- CentOS 7.6
- CentOS 7
- CentOS 6.4
- CentOS 6.3
- CentOS 6.2
Այս էջում
- Նախադրյալներ
- Սկսել
- Տեղադրեք Nginx վեբ սերվերը
- Տեղադրեք PHP և PHP-FPM
- Ստեղծեք ինդեքսային էջ Nginx-ի համար
- Կարգավորեք Nginx-ը PHP-FPM-ով
- Փորձարկեք Nginx-ը PHP-FPM աջակցությամբ
- Եզրակացություն
Nginx-ը անվճար, բաց կոդով և ամենահզոր վեբ սերվերներից մեկն է ամբողջ աշխարհում: Այն հիմնականում օգտագործվում է բարձր բեռնված և մեծ տրաֆիկ կայքերի համար։ Nginx-ը հայտնի է իր կայունությամբ, պարզ կոնֆիգուրացիայով և ռեսուրսների ցածր սպառմամբ: Դուք կարող եք օգտագործել Nginx-ը որպես վեբ սերվեր և հակադարձ վստահված անձ:
FPM-ն նշանակում է FastCGI Process Manager-ը PHP-ի այլընտրանքային PHP FastCGI ներդրումն է և օգտագործվում է բարձր տրաֆիկ կայքերի համար: Այն սովորաբար օգտագործվում է վեբսերվերի հետ՝ PHP էջերը սպասարկելու համար: PHP-FPM-ն օգտագործում է ավելի քիչ հիշողություն և պրոցեսոր՝ համեմատած PHP-ի գործարկման ցանկացած այլ մեթոդի հետ: PHP-FPM-ն ավելի արագ է, քան CGI-ի վրա հիմնված ավանդական մեթոդները բազմաբնակարան PHP միջավայրերի համար: PHP-FPM-ը նաև թույլ է տալիս միաժամանակ գործարկել PHP-ի մի քանի տարբերակ:
Այս ձեռնարկը մեզ կսովորեցնի, թե ինչպես տեղադրել Nginx PHP-FPM աջակցությամբ CentOS 8-ում:
Նախադրյալներ
- Սերվեր, որն աշխատում է CentOS 8-ով:
- Ձեր սերվերի վրա կազմաձևված է արմատային գաղտնաբառը:
Սկսել
Լռելյայնորեն, SELinux-ը միացված է CentOS 8 սերվերում: Այսպիսով, դուք պետք է նախ անջատեք այն:
Դուք կարող եք դա անել՝ խմբագրելով /etc/selinux/config ֆայլը՝
nano /etc/selinux/config
Կատարեք հետևյալ փոփոխությունները.
SELINUX=disabled
Պահպանեք և փակեք ֆայլը: Այնուհետև վերագործարկեք ձեր սերվերը՝ փոփոխությունները կիրառելու համար:
Տեղադրեք Nginx վեբ սերվերը
Նախ, տեղադրեք Nginx վեբ սերվերը հետևյալ հրամանով.
yum install nginx -y
Երբ Nginx-ը տեղադրվի, գործարկեք Nginx ծառայությունը և միացրեք այն, որ այն սկսվի բեռնման վրա հետևյալ հրամանով.
systemctl start nginx
systemctl enable nginx
Ավարտելուց հետո կարող եք անցնել հաջորդ քայլին:
Տեղադրեք PHP և PHP-FPM
Հաջորդը, տեղադրեք PHP և PHP-FPM՝ գործարկելով հետևյալ հրամանը.
yum install php php-cli php-common php-fpm -y
Բոլոր փաթեթները տեղադրվելուց հետո գործարկեք PHP-FPM ծառայությունը և միացրեք այն, որ այն սկսվի համակարգի վերաբեռնումից հետո.
systemctl start php-fpm
systemctl enable php-fpm
Կարող եք նաև ստուգել PHP-FPM ծառայության կարգավիճակը հետևյալ հրամանով.
systemctl status php-fpm
Դուք պետք է ստանաք հետևյալ արդյունքը.
? php-fpm.service - The PHP FastCGI Process Manager
Loaded: loaded (/usr/lib/systemd/system/php-fpm.service; disabled; vendor preset: disabled)
Active: active (running) since Thu 2019-10-17 05:39:11 EDT; 4min 40s ago
Main PID: 1475 (php-fpm)
Status: "Processes active: 0, idle: 5, Requests: 0, slow: 0, Traffic: 0req/sec"
Tasks: 6 (limit: 5060)
Memory: 28.5M
CGroup: /system.slice/php-fpm.service
??1475 php-fpm: master process (/etc/php-fpm.conf)
??1478 php-fpm: pool www
??1479 php-fpm: pool www
??1480 php-fpm: pool www
??1481 php-fpm: pool www
??1482 php-fpm: pool www
Oct 17 05:39:10 centos8 systemd[1]: Starting The PHP FastCGI Process Manager...
Oct 17 05:39:11 centos8 systemd[1]: Started The PHP FastCGI Process Manager.
Ստեղծեք ինդեքսային էջ Nginx-ի համար
Հաջորդը, դուք պետք է ստեղծեք նմուշ info.php էջ՝ ստուգելու համար, թե արդյոք Nginx-ն օգտագործում է PHP-FPM, թե ոչ:
Դուք կարող եք ստեղծել info.php Nginx-ի լռելյայն փաստաթղթերի արմատային գրացուցակում, ինչպես ցույց է տրված ստորև.
nano /var/www/html/info.php
Ավելացնել հետևյալ տողերը.
<?php
phpinfo();
?>
Պահպանեք և փակեք ֆայլը, երբ ավարտեք:
Հաջորդը, փոխեք info.php ֆայլի սեփականությունը nginx.
chown -R nginx: /var/www/html/info.php/
Կարգավորեք Nginx-ը PHP-FPM-ով
Հաջորդը, ձեզ հարկավոր է ստեղծել Nginx վիրտուալ հոսթի կազմաձևման ֆայլ և միացնել PHP-FPM աջակցությունը:
Դուք կարող եք այն ստեղծել հետևյալ հրամանով.
nano /etc/nginx/conf.d/example.conf
Ավելացնել հետևյալ տողերը.
server {
listen 80;
server_name example.com;
root /var/www/html/;
index info.php;
access_log /var/log/nginx/example.com.access.log;
error_log /var/log/nginx/example.com.error.log;
location ~ \.php$ {
try_files $uri =404;
fastcgi_pass unix:/run/php-fpm/www.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg)$ {
expires max;
log_not_found off;
}
}
Պահպանեք և փակեք ֆայլը: Այնուհետև փորձարկեք Nginx-ը շարահյուսական ցանկացած սխալի համար հետևյալ հրամանով.
nginx -t
Այնուհետև միացրեք Nginx վիրտուալ հոսթ ֆայլը և վերագործարկեք Nginx ծառայությունը՝ կոնֆիգուրացիան կիրառելու համար.
systemctl restart nginx
Փորձարկեք Nginx-ը PHP-FPM աջակցությամբ
Այժմ բացեք ձեր վեբ զննարկիչը և մուտքագրեք http://example.com URL-ը: Դուք կվերահղվեք հետևյալ էջին՝
Վերոնշյալ էջում դուք պետք է տեսնեք, որ PHP-FPM-ը բեռնված է Nginx վեբսերվերով:
Եզրակացություն
Շնորհավորում եմ: դուք հաջողությամբ տեղադրել եք Nginx PHP-FPM աջակցությամբ CentOS 8 սերվերի վրա: Այժմ դուք կարող եք օգտագործել PHP-FPM՝ հյուրընկալելու բազմաթիվ կայքեր, որոնք օգտագործում են PHP-ի տարբեր տարբերակներ: