Apache & Nginx. Disambungkan oleh satu rantai (bahagian 2)

Minggu lepas masuk bahagian pertama Dalam artikel ini kami menerangkan cara gabungan Apache dan Nginx dalam Timeweb dibina. Kami sangat berterima kasih kepada pembaca untuk soalan mereka dan perbincangan aktif! Hari ini kami memberitahu anda cara ketersediaan beberapa versi PHP pada satu pelayan dilaksanakan dan sebab kami menjamin keselamatan data kepada pelanggan kami.

Apache & Nginx. Disambungkan oleh satu rantai (bahagian 2)
Hosting yang dikongsi (Penghosan dikongsi) menganggap bahawa banyak akaun pelanggan dihoskan pada satu pelayan. Sebagai peraturan, satu akaun pelanggan mengandungi beberapa tapak web. Tapak web berfungsi pada CMS siap sedia (contohnya, Bitrix) dan yang tersuai. Oleh itu, keperluan teknikal semua sistem adalah berbeza, jadi beberapa versi PHP mesti diuruskan dalam pelayan yang sama.

Kami menggunakan Nginx sebagai pelayan web utama: ia menerima semua sambungan dari luar dan menyediakan kandungan statik. Kami membuat proksi permintaan yang selebihnya ke pelayan web Apache. Di sinilah keajaiban bermula: setiap versi PHP menjalankan contoh Apache berasingan yang mendengar pada port tertentu. Port ini didaftarkan dalam hos maya tapak pelanggan.

Anda boleh membaca lebih lanjut tentang pengendalian skim Kongsi dalam bahagian pertama artikel itu.

Apache & Nginx. Disambungkan oleh satu rantai (bahagian 2)
Skim kongsi

Adalah penting untuk ambil perhatian bahawa kami memasang pakej PHP untuk versi yang berbeza, kerana biasanya semua pengedaran hanya mempunyai satu versi PHP.

Utamakan keselamatan!

Salah satu tugas utama pengehosan bersama adalah untuk memastikan keselamatan data pelanggan. Akaun yang berbeza, terletak pada pelayan yang sama, adalah bebas dan bebas. Bagaimana ia berfungsi?

Fail tapak web disimpan dalam direktori utama pengguna itu sendiri, dan laluan yang diperlukan ditentukan dalam hos maya pelayan web. Adalah penting bahawa pelayan web, Nginx dan Apache, mempunyai akses kepada fail akhir pelanggan tertentu, kerana pelayan web dilancarkan oleh hanya satu pengguna.

Nginx menggunakan patch keselamatan yang dibangunkan oleh pasukan Timeweb: patch ini menukar pengguna kepada yang ditentukan dalam fail konfigurasi pelayan web.

Bagi penyedia pengehosan lain, masalah ini boleh diselesaikan, contohnya, melalui manipulasi hak sistem fail lanjutan (ACL).

Apache menggunakan modul multiprocessing untuk dijalankan mpm-itk. Ia membolehkan setiap VirtualHost berjalan dengan ID pengguna dan ID kumpulannya sendiri.
Apache & Nginx. Disambungkan oleh satu rantai (bahagian 2)
Oleh itu, terima kasih kepada operasi yang diterangkan di atas, kami memperoleh persekitaran yang selamat dan terpencil untuk setiap pelanggan. Pada masa yang sama, kami juga menyelesaikan masalah penskalaan untuk hosting Dikongsi.

Cara gabungan Apache dan Nginx dilaksanakan boleh dibaca bahagian pertama artikel kami. Di samping itu, konfigurasi alternatif melalui skema Dedicated juga diterangkan di sana.

Jika anda mempunyai sebarang soalan untuk pakar kami, tulis dalam komen. Kami akan cuba menjawab segala-galanya atau menerangkan penyelesaian kepada masalah dengan lebih terperinci dalam artikel berikut.

Sumber: www.habr.com

Tambah komen