Mencipta Templat VPS dengan Drupal 9 pada Centos 8
Kami terus mengembangkan pasaran kami. Kami baru-baru ini memberitahu anda caranya membuat imej Gitlab, dan minggu ini Drupal muncul di pasaran kami.
Kami memberitahu anda mengapa kami memilih dia dan bagaimana imej itu dicipta.
Drupal β platform yang mudah dan berkuasa untuk mencipta sebarang jenis tapak web: daripada tapak mikro dan blog kepada projek sosial yang besar, juga digunakan sebagai asas untuk aplikasi web, ditulis dalam PHP dan menggunakan pangkalan data hubungan sebagai penyimpanan data.
Drupal 9 merangkumi semua ciri yang diperkenalkan dalam versi 8.9. Perbezaan utama antara versi 9 dan versi 8 ialah platform akan terus menerima kemas kini dan pembetulan keselamatan selepas November 2021. Versi 9 juga memudahkan proses kemas kini, menjadikan proses naik taraf daripada versi 8 lebih mudah.
Keperluan pelayan
Untuk menggunakan Drupal, disyorkan untuk menggunakan 2 GB RAM dan 2 teras CPU.
Fail Drupal utama mengambil masa kira-kira 100 MB, selain itu anda memerlukan ruang untuk menyimpan imej, pangkalan data, tema, modul tambahan dan sandaran, yang bergantung pada saiz tapak anda.
Drupal 9 memerlukan PHP 7.4 atau lebih tinggi dengan had minimum (memory_limit) untuk memori 64 MB; jika modul tambahan digunakan, adalah disyorkan untuk memasang 128 MB.
Drupal boleh menggunakan Apache atau Nginx sebagai pelayan web, dan MySQL, PostgreSQL atau SQLite sebagai pangkalan data.
Kami akan memasang Drupal menggunakan Nginx dan MySQL.
Pemasangan
Mari kemas kini pakej yang dipasang kepada versi terkini:
sudo dnf update -y
Mari tambahkan kebenaran kekal untuk trafik masuk ke port http/80 dan https/443:
Memandangkan repositori Centos utama pada masa ini menggunakan PHP 7.2, mari tambahkan repositori REMI dengan PHP 7.4 (versi minimum untuk Drupal 9).
Untuk melakukan ini, tambahkan repositori EPEL (diperlukan oleh repositori REMI):
Memandangkan kami membuat templat untuk VDS, dan ia boleh menjadi perlahan, kami akan menambah kelewatan permulaan mysqld selama 30 saat, jika tidak, mungkin terdapat masalah dengan pelayan bermula semasa but sistem awal:
sudo sed -i '/Group=mysql/a
ExecStartPre=/bin/sleep 30
' /usr/lib/systemd/system/mysqld.service
Mari kita ubah kumpulan dan pengguna di mana nginx akan dijalankan dengan membuat perubahan pada /etc/php-fpm.d/www.conf:
sudo sed -i --follow-symlinks 's/user = apache/user = nginx/g' /etc/php-fpm.d/www.conf
sudo sed -i --follow-symlinks 's/group = apache/group = nginx/g' /etc/php-fpm.d/www.conf
Mari tukar pemilik direktori sesi PHP kepada nginx dengan sewajarnya:
sudo chown -R nginx. /var/lib/php/session
Mari kita keluarkan baris dengan ulasan daripada fail konfigurasi /etc/nginx/nginx.conf (supaya tiada pencetus berganda untuk sed):
sudo sed -i -e '/^[ t]*#/d' /etc/nginx/nginx.conf
Tambahkan tetapan mampatan gzip pada /etc/nginx/nginx.conf
Mari tambahkan tetapan fail indeks index.php ke /etc/nginx/nginx.conf:
sudo sed -i '/ root /usr/share/nginx/html;/a
index index.php index.html index.htm;
' /etc/nginx/nginx.conf
Mari tambah tetapan untuk pelayan lalai: Pemprosesan PHP melalui soket php-fpm, lumpuhkan log untuk fail statik, tambah masa tamat tempoh, lumpuhkan akses dan log ralat untuk favicon.ico dan robots.txt, dan tolak akses kepada .ht fail untuk semua orang:
Pada peringkat ini kami akan mematikan pelayan dan mengambil gambar:
shutdown -h now
Selepas melancarkan VDS daripada syot kilat, kami akan melakukan persediaan awal pelayan MySQL dengan menjalankan skrip:
mysql_secure_installation
Mari dayakan pengesah kata laluan:
Would you like to setup VALIDATE PASSWORD component? : y
Mari kita tetapkan kata laluan untuk pengguna root MySQL:
New password:
Re-enter new password:
Mari alih keluar pengguna tanpa nama:
Remove anonymous users? (Press y|Y for Yes, any other key for No) : y
Mari elakkan root daripada menyambung dari jauh:
Disallow root login remotely? (Press y|Y for Yes, any other key for No) : y
Mari padamkan pangkalan data ujian:
Remove test database and access to it? (Press y|Y for Yes, any other key for No) : y
Mari muat semula jadual keistimewaan:
Reload privilege tables now? (Press y|Y for Yes, any other key for No) : y
Selepas ini, untuk menyelesaikan pemasangan, kita boleh pergi ke vps_ip_alamat
Di alamat ini kita akan melihat halaman pemasangan Drupal.
Mari pilih bahasa yang hendak digunakan. Contohnya: Rusia. Klik "Simpan dan Teruskan"
Mari pilih profil pemasangan (demo digunakan semata-mata untuk membiasakan diri anda dengan sistem). Dalam kes kami, biarkan ia menjadi "standard".
Pada halaman seterusnya kami akan memberikan nama kepada pangkalan data, contohnya "drupal". Mari tunjukkan akar nama pengguna pangkalan data dan kata laluan yang diberikan kepadanya semasa menjalankan mysql_secure_installation. Klik "Simpan dan Teruskan."
Mari tunggu pemasangan dan kemas kini terjemahan selesai (proses mungkin mengambil masa beberapa minit).
Kami akan menunjukkan nama tapak, tetapkan e-mel tapak (bagi pihak pemberitahuan tapak yang akan dihantar), log masuk, kata laluan dan e-mel akaun pentadbir Drupal. Kami juga akan menetapkan negara dan zon waktu dalam tetapan serantau. Dan lengkapkan pemasangan dengan mengklik "Simpan dan Teruskan".
Selepas ini, anda boleh pergi ke panel kawalan dengan log masuk dan kata laluan pentadbir Drupal yang dibuat.
Menyediakan HTTPS (pilihan)
Untuk mengkonfigurasi HTTPS, VDS mesti mempunyai nama DNS yang sah, nyatakan dalam
/etc/nginx/nginx.conf
dalam bahagian pelayan nama pelayan (contohnya):
server_name domainname.ru;
Mari mulakan semula nginx:
service nginx restart
Mari lancarkan certbot:
sudo /usr/local/bin/certbot-auto --nginx
Masukkan e-mel anda, bersetuju dengan syarat perkhidmatan (A), Langgan surat berita (pilihan) (N), pilih nama domain yang anda ingin keluarkan sijil (Masukkan untuk semua orang).
Jika semuanya berjalan tanpa ralat, kami akan melihat mesej tentang pengeluaran sijil dan konfigurasi pelayan yang berjaya:
Congratulations! You have successfully enabled ...
Selepas ini, sambungan ke port 80 akan diubah hala ke 443 (https).
Tambahkan pada /etc/crontab untuk mengemas kini sijil secara automatik:
Menyediakan Keselamatan Hos Dipercayai (disyorkan)
Tetapan ini bertujuan sebagai penyelesaian kepada masalah yang berkaitan dengan penentuan base_url dinamik, dan direka untuk menghalang serangan Pengepala HOST HTTP (apabila tapak anda menganggap bahawa ia adalah orang lain).
Untuk melakukan ini, anda perlu menentukan nama domain yang dipercayai untuk tapak dalam fail tetapan.
Dalam fail
/usr/share/nginx/html/sites/default/settings.php Mari batalkan ulasan atau tambahkan tetapan dengan corak nama tapak sebenar, contohnya:
Drupal menyokong APCu - Cache Pengguna PHP Alternatif, versi 8 dan 9 lebih banyak menggunakan APCu sebagai cache tempatan jangka pendek berbanding versi sebelumnya. Saiz cache lalai (32 MB) sesuai untuk kebanyakan tapak, dan tidak boleh melebihi 512 MB.
Untuk mengaktifkan, pasang modul PHP APCu:
dnf -y install php-pecl-apcu
Mulakan semula nginx dan php-fpm:
service nginx restart
service php-fpm restart
Jika anda menggunakan bahasa Rusia dan APCu dengan saiz memori yang disyorkan untuk cache, anda mungkin melihat amaran dalam panel kawalan bahawa saiz memori yang diperuntukkan untuk cache adalah berbeza daripada yang disyorkan, tetapi sebenarnya semuanya berfungsi dengan betul, dan amaran yang salah kemungkinan besar akan diperbetulkan dalam kemas kini seterusnya.
Kami ingin mengingatkan anda bahawa anda juga boleh membuat imej untuk kami
Terdapat tiga pilihan untuk cara menyertai.
Sediakan imej itu sendiri dan dapatkan 3000 rubel untuk baki anda
Jika anda sudah bersedia untuk segera bergegas ke pertempuran dan mencipta imej yang anda hilang, kami akan mengkreditkan anda dengan 3000 rubel ke baki dalaman anda, yang boleh anda belanjakan pada pelayan.
Beritahu sokongan bahawa anda akan membuat dan menguji imej
Kami akan mengkreditkan anda 3000 rubel dan membolehkan keupayaan untuk mencipta syot kilat
Pesan pelayan maya dengan sistem pengendalian yang bersih
Pasang perisian pada VPS ini dan konfigurasikannya
Tulis arahan atau skrip untuk penggunaan perisian
Buat syot kilat untuk pelayan yang dikonfigurasikan
Pesan pelayan maya baharu dengan memilih petikan yang dibuat sebelum ini dalam senarai juntai bawah "Templat pelayan".
Jika pelayan berjaya dibuat, pindahkan bahan yang diterima pada peringkat 6 kepada sokongan teknikal
Jika terdapat ralat, anda boleh menyemak dengan sokongan untuk sebab dan ulangi persediaan
Untuk pemilik perniagaan: tawarkan perisian anda
Jika anda seorang pembangun perisian yang digunakan dan digunakan pada VPS, maka kami boleh memasukkan anda dalam pasaran. Inilah cara kami boleh membantu anda membawa pelanggan baharu, trafik dan kesedaran. Tulis kami
Beritahu kami dalam ulasan apakah imej yang anda tiada?