Биз базарыбызды кеңейтүүнү улантабыз. Биз жакында эле сүйлөштүк Gitlab сүрөтүн жасады, жана ушул аптада Drupal биздин базарда пайда болду.
Аны эмне үчүн тандап алганыбызды жана образ кандай жаралганын айтабыз.
Drupal — веб-сайттын каалаган түрүн түзүү үчүн ыңгайлуу жана күчтүү платформа: микросайттардан жана блогдордон баштап чоң социалдык долбоорлорго чейин, ошондой эле PHPде жазылган веб-тиркемелер үчүн негиз катары колдонулат жана маалыматтарды сактоочу катары реляциялык маалымат базаларын колдонот.
Drupal 9 8.9 версиясында киргизилген бардык функцияларды камтыйт. 9-версиясы менен 8-версиясынын ортосундагы негизги айырмачылык платформа 2021-жылдын ноябрынан кийин жаңыртууларды жана коопсуздук оңдоолорун алууну улантат. Ошондой эле 9-версияда жаңыртуу процесси жөнөкөйлөштүрүлүп, 8-версиядан жаңыртуу процессин дагы жеңилдетти.
Сервердин талаптары
Drupal колдонуу үчүн 2 ГБ оперативдүү эстутум жана 2 CPU өзөгүн колдонуу сунушталат.
Негизги Drupal файлдары болжол менен 100 Мб, кошумча түрдө сизге сүрөттөрдү, маалымат базасын, темаларды, кошумчаларды жана резервдик көчүрмөлөрдү сактоо үчүн орун керек болот, алар сиздин сайттын көлөмүнө жараша болот.
Drupal 9 минималдуу чеги менен PHP 7.4 же андан жогору болушун талап кылат (memory_limit) 64 МБ эстутумга чейин, кошумча модулдарды колдонгон учурда 128 МБ орнотуу сунушталат.
Drupal веб-сервер катары Apache же Nginx, ал эми MySQL, PostgreSQL же SQLite маалымат базасы катары колдоно алат.
Биз Nginx жана MySQL аркылуу Drupal орнотобуз.
жөндөө
Келгиле, орнотулган пакеттерди эң акыркы версияга жаңырталы:
sudo dnf update -y
Келгиле, http/80 жана https/443 портторуна кирүүчү трафик үчүн туруктуу уруксат кошолу:
Учурда PHP 7.2 негизги Centos репозиторийинде колдонулуп жаткандыктан, PHP 7.4 менен REMI репозиторийсин кошолу (Drupal 9 үчүн минималдуу версия).
Бул үчүн, EPEL репозиторийин кошуңуз (REMI репозиторийинен талап кылынат):
Биз VDS үчүн шаблон жасап жаткандыктан жана алар жай болушу мүмкүн, биз mysqld башталышынын 30 секунда кечигүүсүн кошобуз, антпесе системанын баштапкы жүктөө учурунда серверде көйгөйлөр пайда болушу мүмкүн:
sudo sed -i '/Group=mysql/a
ExecStartPre=/bin/sleep 30
' /usr/lib/systemd/system/mysqld.service
/etc/php-fpm.d/www.conf дарегине өзгөртүүлөрдү киргизүү менен nginx иштей турган топту жана колдонуучуну өзгөртөлү:
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
Келгиле, PHP сеанстары каталогунун ээсин ошого жараша nginxге өзгөртөлү:
sudo chown -R nginx. /var/lib/php/session
/etc/nginx/nginx.conf конфигурация файлынан комментарийлери бар саптарды алып салалы (sed үчүн кош триггерлер болбошу үчүн):
index.php индекс файлынын орнотууларын /etc/nginx/nginx.conf дарегине кошолу:
sudo sed -i '/ root /usr/share/nginx/html;/a
index index.php index.html index.htm;
' /etc/nginx/nginx.conf
Келгиле, php-fpm розеткасы аркылуу демейки серверди иштетүүчү php үчүн орнотууларды кошолу, статикалык файлдар үчүн журналды өчүрөлү, жарактуулук мөөнөтүн көбөйтөлү, favicon.ico жана robots.txt үчүн кирүү жана каталар журналын өчүрөлү жана .ht файлдарына кирүүгө тыюу салалы. баары:
Сүрөттөн VDSти ишке киргизгенден кийин, биз скриптти иштетүү менен MySQL серверинин баштапкы орнотуусун аткарабыз:
mysql_secure_installation
Сырсөздү текшергичти иштетүү:
Would you like to setup VALIDATE PASSWORD component? : y
MySQL түпкү колдонуучу сырсөзүн коюу:
New password:
Re-enter new password:
Анонимдүү колдонуучуларды алып салалы:
Remove anonymous users? (Press y|Y for Yes, any other key for No) : y
Келгиле, тамырдын алыстан туташуусунун алдын алалы:
Disallow root login remotely? (Press y|Y for Yes, any other key for No) : y
Келгиле, тест базасын жок кылалы:
Remove test database and access to it? (Press y|Y for Yes, any other key for No) : y
Артыкчылык таблицаларын кайра жүктөө:
Reload privilege tables now? (Press y|Y for Yes, any other key for No) : y
Андан кийин, орнотууну аяктоо үчүн, биз бара алабыз vps_ip_дареги
Бул даректе биз Drupal орнотулган баракты көрөбүз.
Келгиле, колдоно турган тилди тандайлы. Мисалы: орус. "Сактоо жана улантуу" баскычын чыкылдатыңыз
Орнотуу профилин тандайлы (демо система менен таанышуу үчүн гана колдонулат). Биздин учурда «стандарт» болсун.
Кийинки бетте, маалымат базасына "drupal" сыяктуу ат бериңиз. mysql_secure_installation баштаганда маалымат базасынын колдонуучу атын жана ага берилген сырсөздү көрсөтүңүз. "Сактоо жана улантуу" баскычын чыкылдатыңыз.
Котормолорду орнотуу жана жаңыртуу аяктагыча күтөлү (процесс бир нече мүнөткө созулушу мүмкүн).
Биз сайттын атын көрсөтөбүз, сайттын электрондук почтасын (кайсы сайттын эскертмелери жөнөтүлөт), логинди, паролду жана Drupal администраторунун аккаунтунун электрондук почтасын орнотобуз. Биз ошондой эле региондук жөндөөлөрдөн өлкөнү жана убакыт алкагын орнотобуз. Жана "Сактоо жана Улантуу" баскычын чыкылдатуу менен орнотууну аяктаңыз.
Андан кийин, сиз түзүлгөн Drupal администраторунун логин жана сырсөз менен башкаруу панелине бара аласыз.
HTTPS жөндөөсү (милдеттүү эмес)
HTTPS конфигурациялоо үчүн, VDS жарактуу DNS аталышына ээ болушу керек, ичинде көрсөтүңүз
/etc/nginx/nginx.conf
сервер бөлүмүндө сервердин аталышы (мисалы):
server_name domainname.ru;
Nginxти кайра иштетүү:
service nginx restart
certbot баштайлы:
sudo /usr/local/bin/certbot-auto --nginx
Электрондук почтаңызды киргизиңиз, тейлөө шарттарына макул болуңуз (A), Бюллетенге жазылыңыз (милдеттүү эмес) (N), сертификат бергиңиз келген домендик аталыштарды тандаңыз (Бардыгы үчүн киргизиңиз).
Эгер баары катасыз кетсе, анда сертификаттардын ийгиликтүү чыгарылышы жана сервер конфигурациясы жөнүндө билдирүүнү көрөбүз:
Congratulations! You have successfully enabled ...
Андан кийин, 80 портуна туташуулар 443 (https) га багытталат.
Сертификаттарды автоматтык түрдө жаңыртуу үчүн /etc/crontab дарегине кошуңуз:
Бул жөндөө динамикалык base_url аныктоо менен байланышкан көйгөйдү чечүү үчүн арналган жана HTTP HOST Header чабуулдарын алдын алуу үчүн иштелип чыккан (сайтыңыз аны башка бирөө деп ойлогондо).
Бул үчүн, орнотуулар файлында сайттын ишенимдүү домендик аталыштарын көрсөтүү керек.
Файлда
/usr/share/nginx/html/sites/default/settings.php Келгиле, комментарийден чыгаралы же анык сайт аталыштарынын үлгүлөрү менен жөндөөнү кошолу, мисалы:
Drupal APCu колдойт - Альтернативдүү PHP Колдонуучу Кэш, 8 жана 9 версиялары мурунку версияларга караганда APCu кыска мөөнөттүү локалдык кэш катары көбүрөөк колдонот. Демейки кэш өлчөмү (32 МБ) көпчүлүк сайттарга ылайыктуу жана 512 МБ ашпашы керек.
Жандыруу үчүн PHP APCu модулун орнотуңуз:
dnf -y install php-pecl-apcu
Nginx жана php-fpmди кайра иштетиңиз:
service nginx restart
service php-fpm restart
Эгер сиз орус тилин жана кэш үчүн сунушталган эстутум өлчөмү менен APCu колдонсоңуз, башкаруу панелинен кэш үчүн бөлүнгөн эстутумдун көлөмү сунуш кылынгандан башкача экендиги жөнүндө эскертүүнү көрө аласыз, бирок чындыгында баары туура иштейт, жана туура эмес эскертүү кийинки жаңыртууларда оңдолот.
Эгер сиз дароо согушка шашылууга жана өзүңүзгө жетишпеген образды түзүүгө даяр болсоңуз, анда биз сизге ички балансыңызга 3000 рубль кошуп беребиз - аны серверлерге жумшасаңыз болот.
Колдоого сүрөттөрдү түзүп, сынап жатканыңызды айтыңыз
Биз сизге 3000 рубль төлөп, сүрөт тартуу мүмкүнчүлүгүн беребиз
Таза операциялык тутуму бар виртуалдык серверге заказ кылыңыз
Бул VPSке программаны орнотуп, аны орнотуңуз
Программаны жайылтуу үчүн нускамаларды же сценарийди жазыңыз
Конфигурацияланган сервер үчүн сүрөттү түзүңүз
"Сервер үлгүсү" ачылуучу тизмеден мурда түзүлгөн сүрөттү тандоо менен жаңы виртуалдык серверге буйрутма бериңиз
Сервер ийгиликтүү түзүлгөн учурда, 6-кадамда алынган материалдарды техникалык колдоого өткөрүп бериңиз
Ката болгон учурда, анын себебин колдоо менен текшерип, орнотууну кайталасаңыз болот.
Бизнес ээлери үчүн: программаңызды сунуштаңыз
Эгер сиз VPSде орнотулган жана колдонулган программалык камсыздоону иштеп чыгуучу болсоңуз, анда биз сизди базарга кошо алабыз. Мына ушундай жол менен биз сизге жаңы кардарларды, трафикти жана көрүнүштү тартууга жардам бере алабыз. Бизге жаз
Кайсы сүрөттү сагынганыңызды комментарийлерде бизге айтыңыз?