Cuir aoigheachd air grunn VHosts le diofar luchd-cleachdaidh ann an Nginx

Is e an rud as àbhaistiche san t-saoghal nuair a tha frithealaiche agad, smaoineachadh mu thèarainteachd agus barrachd tèarainteachd, chan urrainn dhut a bhith paranoid gu leòr 😉

Is e cleachdadh caran cumanta agus CHAN EIL a thathar a ’moladh, a bhith a’ cleachdadh an aon neach-cleachdaidh airson a h-uile stòr-dàta, nas miosa ma thèid freumh a chleachdadh, a tha cho iongantach sa dh ’fhaodadh e a bhith coltach, tha feadhainn ann a tha (mar thoradh air luaineachd no aineolas) dèan seo, bhruidhinn mi mu thràth carson nach bu chòir dhut a bhith ag obair mar seo ann an post eileA-nis tha an t-àm ann mìneachadh ciamar agus carson a tha e nas fheàrr giollachd an fhrithealaiche lìn a sgaradh ann an diofar luchd-cleachdaidh, an turas seo bidh e a ’cleachdadh Nginx.

DedicatedServer_SubImage

Dè tha sin de luchd-cleachdaidh agus frithealaiche lìn?

Gus a mhìneachadh ann an dòigh ghoirid agus sìmplidh, feumaidh am frithealaiche lìn (apache, nginx, ge bith dè a th ’ann) pròiseasan fhosgladh san t-siostam, pròiseasan a bhios mar an fheadhainn a bheir na faidhlichean bhon HDD (ìomhaighean, msaa) agus a bheir iad gu brabhsair an neach-dèiligidh. . Chan urrainn don fhrithealaiche lìn dìreach na faidhlichean a ghabhail agus an làimhseachadh gun a bhith nad dhuine, is e sin, feumaidh e neach-cleachdaidh a bhios mar an neach a nì seo uile aig a ’cheann thall, agus is e an neach-cleachdaidh sin am fear air a bheil mi a’ bruidhinn, a bheil thu a ’tuigsinn?

Dè a tha sin de bhith a ’dealachadh ann an grunn luchd-cleachdaidh?

Tha sinn den bheachd gu bheil 2 làrach-lìn againn air an t-seirbheisiche againn, aon againn a tha na phròiseact pearsanta, agus fear eile (smaoinicheamaid gur e leannan no bràthair ar nighean a th ’ann). Fiù nuair a bhios sinn a ’cleachdadh stòran-dàta fa-leth agus luchd-cleachdaidh eadar-dhealaichte gus faighinn thuca, aig a’ cheann thall bidh faidhlichean an dà làrach-lìn air an làimhseachadh leis an aon neach-cleachdaidh, tha giollachd PHP air a riaghladh leis an aon neach-cleachdaidh airson a h-uile làrach (mar as trice www-data). Is e cleachdadh neo-mholta a tha seo, tha e nas fheàrr a h-uile dad a bhith air a sgaradh gu math, mar a thèid seann abairt, tha e nas fheàrr a bhith sàbhailte na duilich.

Ok tha mi a ’tuigsinn, ciamar a nì mi e le Nginx

2000px-Nginx_logo.svg

Is e a ’chiad rud a tha fa-near nach eil am modal aige fhèin aig Nginx a bhios a’ làimhseachadh giollachd PHP mar a bhios Apache a ’dèanamh, airson Nginx feumaidh sinn PHP-CGI no PHP-FPM a chleachdadh, a tha ag obair a cheart cho math (no nas fheàrr) na Apache. Mar sin gus giollachd PHP a sgaradh thairis air diofar luchd-cleachdaidh, feumaidh sinn loidhnichean atharrachadh ann am faidhlichean rèiteachaidh PHP (CGI no FPM), chan e Nginx fhèin.

Osbarr gu bheil thu a ’cleachdadh PHP-FPM, cruthaichidh sinn faidhle rèiteachaidh de amar- Airson làrach sònraichte, is e sin, is e amar an dòigh air giollachd PHP a sgaradh bho PHP-FPM, ach bidh sinn a ’dol ann am pàirtean.

1. An toiseach feumaidh fios a bhith againn dè an neach-cleachdaidh den t-siostam a chleachdas sinn, gabhaidh mi ris nach eil cruth sam bith againn fhathast agus uill, cruthaichidh sinn e:

FEUMAIDH na h-òrdughan a leanas a chuir an gnìomh le sochairean rianachd, an dàrna cuid le freumh dìreach no a ’cleachdadh sudo

adduser blog

Tòisichidh sinn air a ’phròiseas àbhaisteach airson neach-cleachdaidh a chruthachadh, cuir a-steach am facal-faire, msaa.

Bidh mi a ’blogadh an neach-cleachdaidh dìreach airson an eisimpleir a leantainn, gur e blog a’ chiad làrach a bheir sinn aoigheachd, uill gum bi ... eòlas fhaighinn air gach neach-cleachdaidh leis a bheil làrach co-cheangailte

1. An toiseach rachamaid gu /etc/php5/fpm/pool.d/:

cd /etc/php5/fpm/pool.d/

2. A-nis, cruthaichidh sinn faidhle ris an canar blog.conf:

touch blog.conf

3. A-nis cuiridh sinn rèiteachadh na linne a chleachdas sinn airson blog VHost:

Deasaich am faidhle blog.conf le nano ... mar eisimpleir: sudo nanoblog.conf
[blog] cleachdaiche = blog
buidheann = blog
èist = / var / run / php5-fpm-blog.sock listen.owner = blog
èist.group = blog
pm = ondemand pm.max_children = 96 chdir = /

Nòta: Is e na tha mi gan comharrachadh ann an dearg na dh'fheumas iad atharrachadh a rèir an neach-cleachdaidh a chruthaich iad roimhe. Mar eisimpleir, ma chruthaicheas iad VHost eile le cleachdaiche eile (fòram mar eisimpleir) an uairsin an àite blog dìreach cuir fòram anns gach loidhne, a bheil e air a thuigsinn?

4. Aon uair 's gu bheil rèiteachadh an amar ùr (am faidhle blog.conf a tha sinn dìreach air a chruthachadh agus a dheasachadh), is e an cothrom a th ’ann innse don Nginx VHost stoc eadar-dhealaichte a chleachdadh airson an VHost sin, airson an làrach seo. Is e an stocainn a thèid a chleachdadh an tè a dhearbh sinn roimhe (/var/run/php5-fpm-blog.sock). Feuch an deasaich sinn an Nginx VHost agus anns a ’phàirt giollachd PHP, tha sinn a’ comharrachadh na stocainnean sin a chleachdadh. Mar eisimpleir:

àite ~ \ .php $ {if (! -f $ request_filename) {till 404; }
fastcgi_pass unix: / var / run / php5-fpm-blog.sock;
toirt a-steach fastcgi_params; fastcgi_param SCRIPT_FILENAME $ document_root $ fastcgi_script_name; fastcgi_read_timeout 300; }

Mar a chì thu, tha mi a ’nochdadh gu bheil giollachd PHP den VHost sin (tha na loidhnichean sin mar eisimpleir taobh a-staigh / etc / nginx / sites-enable / vhost-blog) dèan e leis na stocainnean a lorgar ann an /var/run/php5-fpm-blog.sock ... is e sin am fear a chruthaich sinn roimhe nuair a tha deasachadh /etc/php5/fpm/pool.d/blog.conf ... is nach do thuig e?

5. Aon uair ‘s gu bheil seo air a dhèanamh, bidh sinn ag ath-thòiseachadh an dà sheirbheis (php5-fpm agus nginx) agus voila, chì sinn nach eil giollachd na làraich sin (vhost) air a dhèanamh le www-data no root no neach sam bith coltach ris, ach leis an neach-cleachdaidh a mhìnich sinn roimhe. .

An seo tha mi a ’sealltainn dhut toradh a ps aux | grep fpm air aon de na frithealaichean nodan agam:

ps aux | grep fpm ebook 586 0.0 0.0 349360 1204? S Mar30 0:00 php-fpm: pool ebook ebook 589 0.0 0.0 349360 1204? S Mar30 0:00 php-fpm: ebook pool www 608 0.0 0.2 350084 5008? S Mar30 0:00 php-fpm: pool www www 609 0.0 0.2 350600 5048 30? S Mar0 00:3 php-fpm: pool www tv611 0.0 0.0 349360 1204 30? S Mar0 00:3 php-fpm: pool tv3 tv615 0.0 0.0 349360 1204 30? S Mar0 00:3 php-fpm: iris pool tv1818 1.7 1.7 437576 36396 09? S 55:0 46:2264 php-fpm: iris iris pool 1.9 1.7 437332 35884 10? S 15:0 26:2338 php-fpm: sgoilear iris pool 4.3 1.0 428992 22196 10? S 18:0 53:2413 php-fpm: iris sgoilearan pool 1.8 1.7 437764 36152 10? S 22:0 18:2754 php-fpm: iris gutl pool 3.5 1.3 356724 27164 10? S 38:0 00:5624 php-fpm: pool gutl cgr 0.0 1.0 365168 22696 28? S Apr0 16:7900 php-fpm: amar cgr sgoilear 0.3 2.5 457052 52444 25? S Apr20 23:11021 php-fpm: sgoilear sgoilear pool 0.4 2.5 458316 52864 28? S Apr5 57:11254 php-fpm: sgoilear pool cgr 0.0 1.0 363152 21708 28? S Apr0 12:13184 php-fpm: pool cgr cgr 0.0 1.0 362872 21360 28? S Apr0 08:XNUMX php-fpm: pool cgr

Mar a chì thu ... tha e glè fhurasta a bhith a ’sgaradh giollachd PHP le luchd-cleachdaidh a’ cleachdadh Nginx + PHP-FPM, an sin chì thu gu bheil grunn amaran ann, oir tha grunn luchd-cleachdaidh ann.

Co-dhùnaidhean

Nuair a thig e gu luchd-frithealaidh, cha bhith thu a-riamh paranoideach gu leòr ... chan e rud a th ’ann an tèarainteachd leis, is ann as motha a bhios sinn an-còmhnaidh a’ feuchainn ri tèarainteachd ar frithealaichean agus na seirbheisean aca a leasachadh, is ann as dualtaiche a bhios eagal oirnn le oidhirp hack (soirbheachail) no rud sam bith coltach 😉


Tha susbaint an artaigil a ’cumail ri na prionnsapalan againn de moraltachd deasachaidh. Gus aithris a dhèanamh air mearachd cliog an seo.

9 bheachd, fàg do chuid fhèin

Fàg do bheachd

Seòladh-d cha tèid fhoillseachadh.

*

*

  1. Uallach airson an dàta: Miguel Ángel Gatón
  2. Adhbhar an dàta: Smachd air SPAM, riaghladh bheachdan.
  3. Dìleab: Do chead
  4. Conaltradh an dàta: Cha tèid an dàta a thoirt do threas phàrtaidhean ach a-mhàin fo dhleastanas laghail.
  5. Stòradh dàta: Stòr-dàta air a chumail le Occentus Networks (EU)
  6. Còraichean: Aig àm sam bith faodaidh tu am fiosrachadh agad a chuingealachadh, fhaighinn air ais agus a dhubhadh às.

  1.   dhunntair thuirt

    Gaara, anns na h-amannan gnàthach bu chòir na rudan sin a bhith fèin-ghluasadach cho mòr ‘s as urrainn, tha mi a’ moladh dhut feuchainn air Ansible. Às aonais àidseant, chan fheum thu ach python air an òstair iomallach, gu math sìmplidh a rèiteachadh, faidhlichean yaml, teamplaidean Jinja.

    https://github.com/ansible/ansible-examples/tree/master/wordpress-nginx

    1.    KZKG ^ Gaara thuirt

      Feuch sinn, chan eil sin an-còmhnaidh a-mhàin airson làraich WordPress, agus ... haha ​​is dòcha Ansible a ’cliogadh volao, ach is fheàrr leam fios a bhith agad ciamar a tha a h-uile càil ag obair air an fhrithealaiche, eadhon ged a dh'fheumas mi 1 mionaid a chaitheamh a’ cruthachadh stocainnean ùra agus a VHost 😀 ùr

      1.    dhunntair thuirt

        Le Ansible bidh thu ag fèin-ghluasad a h-uile càil, bidh thu a ’dèanamh gu practaigeach ge bith dè a tha thu ag iarraidh, is e buannachd an dòigh seo gu bheil thu a’ gabhail a-steach a ’chleachdadh agus an uairsin a’ cur an gnìomh aig toil, smaoinich gu bheil làrach làn luchdaichte agad agus gu bheil thu airson cothromachadh luchdan a dhèanamh eadar frithealaichean tagraidh, feumaidh iad sin a bhith air a rèiteachadh dìreach an aon rud nach urrainn dhut ceum a leum no dad eadar-dhealaichte a dhèanamh ann an aon dhiubh, an urrainn dhut smaoineachadh air an dòigh-obrach a dhèanamh ceum air cheum 4 tursan? Le Ansible tha e cho sìmplidh ri bhith a ’cur an t-ainm aoigheachd ris an fhaidhle tasgaidh agus Voilá !!

        http://www.ansible.com/how-ansible-works

      2.    dhunntair thuirt

        Duilich mun chult Ansible, ach is e aon de na teicneòlasan sin a lorgas tu agus tha thu airson gum bi a h-uile duine ga chleachdadh a-nis oir tha e cho fionnar agus practaigeach, tha e mar nuair a lorgas tu NGINX agus tha thu airson gum fàg do charaidean uile Apache sa bhad.

        https://speakerdeck.com/slok/ansible-all-the-things

  2.   Beannachd thuirt

    Tha mi cinnteach gu bheil an dreuchd agam a ’cur ri seo ...
    http://blog.ngen.com.ar/configuracion-segura-de-un-webserver-con-nginx-php-fpm/

  3.   Rot87 thuirt

    Tha mi (no sgrùdadh gu bhith) na leasaiche agus le NGIX bha mòran dhuilgheadasan agam nuair a bha mi a ’rèiteachadh nginx + php-fpm. Tha fios agam nach e an distro archlinux an rud as fheàrr a dhèanamh mar fhrithealaiche, ach a h-uile uair a dh ’ùraich mi dreach de ngix no php bha a h-uile dad an-còmhnaidh a’ tuiteam agus mar sin leig mi seachad an oidhirp lol… Airson an-diugh dh ’fhuirich mi leis an Apache + PHP clasaigeach ach Chì mi ma choisicheas mi timcheall NGIX a-rithist ... is dòcha air inneal brìgheil

    1.    dhunntair thuirt

      Bidh an inntinn ag atharrachadh beagan, tha nginx a ’frithealadh an t-susbaint statach agus a’ frithealadh mar neach-ionaid cùil airson a ’php-fpm is e sin a tha a’ ruith an fhìor PHP, feumaidh tu tòiseachadh ann am pàirtean agus an cleachdadh a choileanadh ceum air cheum, coimhead airson stiùireadh airson cleachdadh am frèam leis a bheil thu ag obair, tha mion-fhiosrachadh aig gach fear le ainmean a ’phobaill, statach, goireasan, msaa ...

  4.   Anonymous thuirt

    A bheil a ’choimhearsnachd gu mòr airson am facal“ hostear ”a leigeil seachad, nach eil ann. Le Dia, a bheil e cho duilich "aoigh" a ràdh?

  5.   Wil thuirt

    Beannachdan, a ’leantainn an eisimpleir agad bu mhath leam faighinn a-mach an gabhadh amar a dhèanamh a-mhàin airson am facal worden, is e sin, airson an wp-admin a’ dèanamh socaid ùr airson ceanglaichean a-steach don backend

    àite / wp-admin {
    root /var/www/yoursite.com/wp-admin;
    innis index.php index.html index.htm;
    àite ~ ^ / wp-admin /(.+. php) $ {
    try_files $ uri = 404;
    root /var/www/yoursite.com/wp-admin;
    steach / etc / nginx / fastcgi_params;

    fastcgi_pass server unix:/run/php5-fpm2.sock;
    fastcgi_index index.php;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_buffer_size 128k;
    fastcgi_buffers 256 4k;
    fastcgi_busy_buffers_size 256k;
    fastcgi_temp_file_write_size 256k;
    fastcgi_read_timeout 1240;
    }
    location ~* ^/wp-admin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ {
    root /var/www/tusitio.com/wp-admin/;
    }
    }