Аз сервери мӯътадил ва серӣ вобаста ба қитъаи сомӣ вобаста аст. Корҳои суст ва тӯлҳои мунтазам ҳам меоянд, ҳам меҳмонон ва муҳаррикҳои ҷустуҷӯиро. Дар охирин рейтинги сайти braking дар натиҷаҳои ҷустуҷӯӣ пасттар хоҳад шуд ва он дар 10 боло нахоҳад буд, аммо мегӯяд, дар 100 боло барои ҳамаи саволҳо.
Истифодаи парҳези nginx ва php-fpm барои нигоҳдории сомона ба шумо имкон медиҳад, ки суръати кори онҳо, инчунин устувории системаи умумиро зиёд кунед. Илова бар ин, бо истифода аз apache, мо системаро каме осон мекунем ва ҳатто онро муҳофизат мекунем. Баъд аз ҳама, агар ҳеҷ apache вуҷуд надошта бошад, пас ҳамлагар наметавонад намунаи файли .htaccess-ро барои мақсадҳои худ истифода набарад.
Бастаи nginx + php-fpm хеле осон аст, ки конфигуратсия ва аз ҷониби CMS маъмултаро дастгирӣ мекунад: WordPress, MODX, DLE, чорчӯбҳои гуногун. Ҳамаи ин метавонад бе apache хеле кор кор.
Ҳангоми насб кардани сервери веб, бе эҷоди корбар кор намекунад. Идеалӣ, барои ҳар як сайт бояд як истифодабарандаи алоҳида таъсис дода шавад. Пас, мо метавонем дигар сайтҳоро муҳофизат намоем, агар яке аз корбарон хомӯш карда шавад. Намунаҳои ин мақола бо назардошти он, ки шумо истифодабарандагонро мувофиқи дастурҳо офариданд, навишта шудаанд.
Аввалан, модулҳои асосӣ насб кунед: php-fpm, mysql, curl, GD. Ҳамаи дигарҳо зарурати инфиродӣ доранд.
# насби насб Нигер php5-fpm php5-mysqlnd php5-curl php5-gd
Файлҳои конфигуратсия дар / etc / php5 / fpm / directory ҷойгир шудаанд .
Мақолаи мақолаҳо:
- Настраиваем php-пул для обслуживания запросов 1 Барои php-pool ба дархостҳои хидматрасон насб кунед
- Обработка php скриптов посредством nginx 2 Коркарди php бо истифодаи nginx
Мо хидматрасонии php-pool -ро барои хидматрасонии мо насб мекунем
Дар аввал, php-fpm дорои танҳо як ҳавзи номзади www мебошад. Мо онро ҳамчун асосҳои дигари ҳавзаҳо истифода мебарем.
Файли configured /etc/php5/fpm/pool.d/conconf , якчанд тағиротҳоро баррасӣ кунед ва арзишҳоро интихоб кунед.
Натиҷаи аввал номи номи ҳавлӣ мебошад. Он дар қуттиҳои мураббаъ ҷойгир карда шудааст ва бо номи ҳар як истифодабарандаи система мавҷуд нест.
[www]
Баъд мо номи истифодабаранда ва гурўҳи худро нишон медиҳем, ки дар он феҳристи хонагӣ ҷойгир аст.
user = username group = www-маълумот
Муайян кунед, ки ҳавзҳо бояд ҳамчун як воҳиди корӣ кор кунанд. $ B variable $ бо номи номи он иваз карда мешавад.
listen = /var/run/php-$pool.sock
Истифодаи усули статистикиро муайян мекунем, ки дар он як қатор муайяни ҷараёнҳои обҷамъӣ дар давоми оғозёбии FP сохта мешаванд. Онҳо ба ҳама дархостҳои воридотӣ хизмат мерасонанд.
pm = static
Чаро чунин интихоб? :) Ин варианти иқтисодӣ аст. Ҳар як раванди ҳавопаймоӣ маблағи RAM-ро ба memory_limit тағйир дода, якчанд мегабайт дар як модули пайвастшуда, ҳофиз ва ғайра дорад. Дар версияи стандартие, ҳамаи дархостҳо танҳо бо равандҳои офаридашуда кор карда мешаванд ва онҳо нав нестанд (ва хотираи арзишмандро ишғол мекунанд). Дар натиҷа мо истеъмолоти хотираи хотиррасониро ба даст меорем.
Шумораи зарурии равандҳои хидматҳои хидматрасониро муайян кунед. Он вобаста аз борфарории кор интихоб карда мешавад.
pm.max_children = 3
Ман тавсифи параметрҳои зеринро дар охири файлсозии конфигуратсия илова менамоям.
Рӯйхати ҷойгиронии файлҳои муваққатӣ:
php_admin_value [upload_tmp_dir] = "/ var / www / username / tmp"
Феҳристи сабти файлҳои иҷлосия:
php_admin_value [session.save_path] = "/ var / www / username / sessions"
Барои бехатарӣ, дастрасӣ ба ин рамзҳо бояд танҳо ба корбар дастрасӣ дошта бошад, бо иҷозатҳое, ки дар он ҳавзаҳои php-fpm оғоз карда мешавад. Ҳамчунин, ҳамон як феҳристро барои сабт кардани файлҳои ҷаласаҳо ва файлҳои муваққатӣ истифода набаред.
Ҳадди хотираи хотиррасонӣ барои иҷро кардани скриптҳо бояд дар асоси талаботи сомона интихоб карда шавад. Барои оғози кор:
php_admin_value [memory_limit] = 50М
Параграфи заруриро муайян кунед, ки осебпазириро бартараф мекунад:
php_admin_value [cgi.fix_pathinfo] = 0
Тағиротҳои фиристодашударо ва open_basedir махсусан нишон дода намешаванд. Онҳо ҳамчун параметрҳои зудгузар дар файли танзимоти nginx гузаштанд. Ҳамин тавр, барои ҳар як саҳифаи мушаххас шумо метавонед танзимоти худро муайян кунед. :)
Пас аз ҳамаи параметрҳои зарурӣ муайян карда шудаанд, шумо бояд функсияи php-fpm бо фармонро пур кунед:
# хидмати php5-fpm хидматгузорӣ
Барномаҳои php бо истифодаи nginx
Ин параметр барои npx ба кор бо php-fpm танзим карда мешавад. Танзимоти тайёр
сервер { server_name example.com ; гӯш кардан 80; access_log / var / log / nginx / example.com .access.log; error_log / var / log / nginx / example.com .error.log; charset utf-8; index index.php index; реша / var / www макон / {{ try_files $ uri $ uri / /index.php$args; }} Ҷойгиршавӣ ~ \ .pp $ { try_files $ uri = 404; fastcgi_pass unix: /run/php-www.sock; fastcgi_index index.php; дохил fastcgi_params; fastcgi_param SCRIPT_FILENAME $ document_root $ fastcgi_script_name; fastcgi_param PHP_VALUE "sendmail_path = / usr / sbin / sendmail -t -i -fmail@example.com"; fastcgi_param PHP_ADMIN_VALUE "open_basedir = / var / www / example.com /: / var / save_path /: / var / tmp_dir /"; }} }}
example.com бо доменатон иваз кунед.
Тавсифи параметрҳо :
try_files $uri =404;
дар браузер истифодабаранда ба ҷои хатогии 404 нишон дода мешавад, ба ҷои он ки паёми воридшударо нишон надиҳад , дар сурати ин хато рӯй медиҳад.
fastcgi_pass
- роҳ ба сақти php-fpm.
fastcgi_pass unix: /run/php-www.sock;
Тағйироти зерин роҳи фиристодани почтаи электронӣ ва параметре, ки суроғаи почтаи электронии администраторро муайян мекунад. Mail@example.com иваз кунед.
fastcgi_param PHP_VALUE "sendmail_path = / usr / sbin / sendmail -t -i -fmail@example.com";
Номгӯиҳо барои open_basedir: рӯйхат бо сайт, феҳрист барои захира кардани файлҳои муваққатӣ, феҳрист барои файлҳои нишаст.
fastcgi_param PHP_ADMIN_VALUE "open_basedir = / var / www / example.com /: / var / save_path /: / var / tmp_dir /";
Агар шумо бояд якчанд параметрҳоро гузаронед, шумо бояд ин тавр амал кунед:
fastcgi_param PHP_ADMIN_VALUE "sendmail_path = / usr / sbin / sendmail -t -i -fmail@example.com \ nopen_basedir = / var / www / example.com /: / var / save_path /: / var / tmp_dir /";
Тавре ки шумо метавонед дидед, параметрҳо бо решакании алоҳида ҷудо карда мешаванд: \ n .
Мо ҳамаи тағйиротеро, ки мо додем, сар медиҳем ва nginx бозоғоз мекунем.
# nginx хидматрасонӣ
Zrastite он кор намекунад, намуна намебошад
Нимаи нек Роҳнамои решавӣ дар httpd конфигуратсия бо нимниолон бояд эҳтимолан пӯшида бошад ... ва танзимот бояд дар / etc / nginx / сайтҳое, ки бо номи суроғаи сомона ҷойгиранд, ҷойгир карда шаванд.
Чаро истифодабарандагон барои ҳар як алоҳида ҷудо мешаванд?
Ин маънои онро дорад, ки агар як корбар фиреб карда шуда бошад, пас сайтҳои дигар бехатар хоҳанд буд?
Оё ман лозим аст, ки истифодабарандагони гуногун эҷод кунам, агар ман танҳо дар система кор кунам, ба система тавассути SSH тавассути шаҳодат ворид шавед.
DB инчунин дар Интернет назар намекунад.
Ташаккур.
"Ин параметр ба nginx барои кор бо php-fpm кор мекунад. Танзимоти тайёр "
ва ба куҷо гузоштани он?