How to Install Drupal 8 on CentOs 7 / Redhat (RHEL) 7
Talaan ng mga Nilalaman:
- Mga kinakailangan
- Lumikha ng isang database ng MySQL
- I-install ang PHP
- I-install ang Kompositor
- I-install ang Drupal
- I-configure ang Nginx
- Subukan ang Pag-install
- I-install ang Mga Drupal Module at Mga Tema
- I-update ang Drupal Core
- Konklusyon
Ang Drupal ay isa sa nangungunang bukas na platform ng CMS sa buong mundo. Ito ay nababaluktot, nasusukat at maaaring magamit upang makabuo ng iba't ibang uri ng mga website na nagmula sa maliit na personal na blog hanggang sa mga malalaking kumpanya sa korporasyon, pampulitika, at gobyerno.
Sa tutorial na ito, ipapaliwanag namin kung paano i-install ang Drupal 8.6 sa CentOS 7.
Mayroong maraming mga paraan upang mai-install ang Drupal. Saklaw ng gabay na ito ang mga hakbang na kinakailangan para sa pag-install ng Drupal gamit ang isang kompositor na template para sa mga proyekto ng Drupal na tinatawag na drupal-project.
Gumagamit kami ng Nginx bilang isang web server, ang pinakabagong PHP 7.2 at MySQL / MariaDB bilang isang server ng database.
Mga kinakailangan
Bago mo simulan ang pag-install, tiyakin na nakamit mo ang sumusunod na mga kinakailangan:
- Magkaroon ng isang domain name na tumuturo sa iyong public server IP. Gagamitin namin ang
example.com.Maaari nang mai-install ang Nginx. May naka-install na sertipiko ng SSL para sa iyong domain. Maaari kang mag-install ng isang libreng Let’s Encrypt SSL certificate sa pamamagitan ng pagsunod sa mga tagubiling ito.Mag-log in bilang isang gumagamit na may mga pribilehiyo ng sudo.
Lumikha ng isang database ng MySQL
Ang unang hakbang ay ang lumikha ng isang bagong database at account ng gumagamit at magbigay ng naaangkop na pahintulot sa gumagamit.
Kung naka-install na ang MySQL o MariaDB sa iyong server maaari mong laktawan ang hakbang na ito, kung hindi mo mai-install ang package ng MariaDB 5.5 mula sa default na mga repositori ng CentOS sa pamamagitan ng pag-type:
sudo yum install mariadb-server
Para sa mga sariwang pag-install ng MariaDB / MySQL, inirerekumenda na patakbuhin ang utos ng
mysql_secure_installation
upang mapagbuti ang seguridad ng iyong database server.
Mag-login sa shell ng MySQL sa pamamagitan ng pag-type ng sumusunod na utos at ipasok ang password kapag sinenyasan:
mysql -u root -p
Upang lumikha ng isang database na nagngangalang
drupal
, pinangalanan ng gumagamit na
drupaluser
at upang mabigyan ng kinakailangang mga pahintulot sa gumagamit ang mga sumusunod na utos:
CREATE DATABASE drupal CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER, CREATE TEMPORARY TABLES ON drupal.* TO 'drupaluser'@'localhost' IDENTIFIED BY 'change-with-strong-password';
I-install ang PHP
Ang mga barko ng CentOS 7 na may bersyon na PHP 5.4, na lipas na at hindi na suportado. Ang inirekumendang bersyon ng PHP para sa Drupal ay ang PHP 7.2.
Upang mai-install ang PHP 7.2 sa CentOS 7 una kailangan namin upang paganahin ang mga repositori ng EPEL at Remi:
sudo yum install epel-release yum-utils
sudo yum install
sudo yum-config-manager --enable remi-php72
Kapag pinagana ang mga repositori na mai-install ang PHP 7.2 at lahat ng kinakailangang mga extension ng PHP ay nagpapatakbo ng mga sumusunod na utos:
sudo yum install php-cli php-fpm php-mysql php-json php-opcache php-mbstring php-xml php-gd php-curl git
Nag-install kami ng PHP FPM dahil magagamit namin ang Nginx bilang isang web server.
Sa pamamagitan ng default ang PHP FPM ay tatakbo bilang
apache
gumagamit sa port 9000. Babaguhin namin ang gumagamit upang
nginx
at lumipat mula sa TCP socket sa Unix socket. Upang gawin ito buksan ang
/etc/php-fpm.d/www.conf
file at i-edit ang mga linya na naka-highlight sa dilaw:
… user = nginx… group = nginx… listen = /run/php-fpm/www.sock… listen.owner = nginx listen.group = nginx
Tiyaking ang direktoryo ng
/var/lib/php
ay may wastong pagmamay-ari gamit ang sumusunod na utos ng chown:
sudo chown -R root:nginx /var/lib/php
Sa wakas, paganahin at simulan ang serbisyo ng PHP FPM:
sudo systemctl enable php-fpm
sudo systemctl start php-fpm
I-install ang Kompositor
Ang kompositor ay isang dependency manager para sa PHP. I-download namin ang template ng Drupal at i-install ang lahat ng kinakailangang mga bahagi ng Drupal na may kompositor.
Ang sumusunod na utos ay mag-i-install ng kompositor sa buong mundo sa pamamagitan ng pag-download ng Tagabuo ng kompositor na may curl at ilipat ang file sa direktoryo
/usr/local/bin
:
curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer
Patunayan ang pag-install sa pamamagitan ng pagpapatakbo ng sumusunod na utos na mag-print ng bersyon ng kompositor:
composer --version
Ang output ay dapat magmukhang ganito:
Composer version 1.8.4 2019-02-11 10:52:10
I-install ang Drupal
Ngayon na na-install ang kompositor, lumikha ng isang bagong proyekto ng Drupal gamit ang Drupal template sa loob
/var/www/my_drupal
direktoryo:
sudo /usr/local/bin/composer create-project drupal-composer/drupal-project:8.x-dev /var/www/my_drupal --stability dev --no-interaction
Ang utos sa itaas ay i-download ang template, makuha ang lahat ng kinakailangang mga pakete ng php at patakbuhin ang mga script na kinakailangan upang ihanda ang proyekto para sa pag-install. Ang proseso ay maaaring tumagal ng ilang minuto at kung matagumpay ito ang pagtatapos ng output ay magiging ganito:
Create a sites/default/settings.php file with chmod 0666 Create a sites/default/files directory with chmod 0777
Susunod na hakbang ay ang pag-install ng Drupal gamit ang Drush. Sa utos sa ibaba ay ipinapasa namin ang database ng MySQL at impormasyon ng gumagamit na nilikha namin sa unang seksyon:
cd /var/www/my_drupal
sudo vendor/bin/drush site-install --db-url=mysql://drupaluser:change-with-strong-password@localhost/drupal
A-prompt ka ng installer sa sumusunod na mensahe, pindutin lamang ang enter upang magpatuloy.
You are about to DROP all tables in your 'drupal' database. Do you want to continue? (yes/no):
Kapag nakumpleto ang pag-install ang script ay mai-print ang administrative username at password. Ang output ay dapat magmukhang isang bagay tulad ng mga sumusunod:
Starting Drupal installation. This takes a while. Installation complete. User name: admin User password: frxka2Db5v
Sa wakas, itakda ang tamang mga pahintulot upang ang web server ay maaaring magkaroon ng buong pag-access sa mga file at direktoryo ng site:
sudo chown -R nginx: /var/www/my_drupal
I-configure ang Nginx
Sa ngayon, dapat na mayroon kang Nginx na may SSL sertipiko na naka-install sa iyong system, kung hindi suriin ang mga kinakailangan para sa tutorial na ito.
Upang lumikha ng isang bagong block ng server para sa aming bagong proyekto ng Drupal gagamitin namin ang recipe ng Nginx mula sa opisyal na site ng Nginx.
Buksan ang iyong text editor at lumikha ng sumusunod na file:
sudo nano /etc/nginx/conf.d/example.com
/etc/nginx/conf.d/example.com
# Redirect HTTP -> HTTPS server { listen 80; server_name www.example.com example.com; include snippets/letsencrypt.conf; return 301 https://example.com$request_uri; } # Redirect WWW -> NON WWW server { listen 443 ssl http2; server_name www.example.com; ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem; include snippets/ssl.conf; return 301 https://example.com$request_uri; } server { listen 443 ssl http2; server_name example.com; root /var/www/my_drupal/web; # SSL parameters ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem; include snippets/ssl.conf; # log files access_log /var/log/nginx/example.com.access.log; error_log /var/log/nginx/example.com.error.log; location = /favicon.ico { log_not_found off; access_log off; } location = /robots.txt { allow all; log_not_found off; access_log off; } location ~ \..*/.*\.php$ { return 403; } location ~ ^/sites/.*/private/ { return 403; } # Block access to scripts in site files directory location ~ ^/sites/+/files/.*\.php$ { deny all; } # Block access to "hidden" files and directories whose names begin with a # period. This includes directories used by version control systems such # as Subversion or Git to store control files. location ~ (^|/)\. { return 403; } location / { try_files $uri /index.php?$query_string; } location @rewrite { rewrite ^/(.*)$ /index.php?q=$1; } # Don't allow direct access to PHP files in the vendor directory. location ~ /vendor/.*\.php$ { deny all; return 404; } location ~ '\.php$|^/update.php' fastcgi_split_path_info ^(.+?\.php)(# Fighting with Styles? This little gem is amazing. # location ~ ^/sites/.*/files/imagecache/ { # For Drupal <= 6 location ~ ^/sites/.*/files/styles/ { # For Drupal >= 7 try_files $uri @rewrite; } # Handle private files through Drupal. Private file's path can come # with a language prefix. location ~ ^(/+)?/system/files/ { # For Drupal >= 7 try_files $uri /index.php?$query_string; } location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg)$ { try_files $uri @rewrite; expires max; log_not_found off; } }
Huwag kalimutang palitan ang halimbawa.com sa iyong Drupal domain at itakda ang tamang landas sa mga file ng sertipiko ng SSL. Ang lahat ng mga kahilingan sa HTTP ay mai-redirect sa HTTPS. Ang mga snippet na ginamit sa pagsasaayos na ito ay nilikha sa gabay na ito.
Bago i-restart ang serbisyo ng Nginx gumawa ng isang pagsubok upang matiyak na walang mga syntax error:
sudo nginx -t
I-restart ang serbisyo ng Nginx para sa mga pagbabago na magkakabisa sa pamamagitan ng pag-type:
Subukan ang Pag-install
Buksan ang iyong browser, i-type ang iyong domain at sa pag-aakalang matagumpay ang pag-install, lilitaw ang isang screen na katulad ng sumusunod:
Maaari kang mag-log in bilang isang admin at simulan ang pagpapasadya ng iyong bagong pag-install ng Drupal.
I-install ang Mga Drupal Module at Mga Tema
Ngayon na mayroon kang naka-install na proyekto ng Drupal, nais mong mag-install ng ilang mga module at tema. Ang mga module at tema ng Drupal ay nai-host sa isang pasadyang tagalimbag ng kompositor, na nag-configure ng drupal-project para sa amin sa labas ng kahon.
Upang mag-install ng isang module o isang tema, ang kailangan mo lang gawin ay ang
cd
sa direktoryo ng proyekto at ang
composer require drupal/module_or_theme_name
uri ay
composer require drupal/module_or_theme_name
. Halimbawa, kung nais nating mai-install ang module na Pathauto, kailangan nating patakbuhin ang sumusunod na utos:
cd /var/www/my_drupal
sudo -u nginx /usr/local/bin/composer require drupal/pathauto
Sa pamamagitan ng paghahanda ng
sudo -u nginx
tumatakbo kami ng utos bilang gumagamit
nginx
Using version ^1.3 for drupal/pathauto./composer.json has been updated > DrupalProject\composer\ScriptHandler::checkComposerVersion Loading composer repositories with package information Updating dependencies (including require-dev) Package operations: 3 installs, 0 updates, 0 removals - Installing drupal/token (1.5.0): Downloading (100%) - Installing drupal/ctools (3.2.0): Downloading (100%) - Installing drupal/pathauto (1.3.0): Downloading (100%) Package phpunit/phpunit-mock-objects is abandoned, you should avoid using it. No replacement was suggested. Writing lock file Generating autoload files > DrupalProject\composer\ScriptHandler::createRequiredFiles
Tulad ng nakikita mo mula sa output sa itaas ng kompositor ay mai-install din ang lahat ng mga dependency sa pakete para sa amin.
I-update ang Drupal Core
Bago i-upgrade ito ay palaging magandang ideya na kumuha ng isang backup ng iyong mga file at database. Maaari mo ring gamitin ang module ng Backup at Migrate o mano-mano ang pag-backup sa iyong database at mga file.
Upang i-back up ang mga file ng pag-install maaari mong gamitin ang sumusunod na utos ng rsync, siyempre, kailangan mong gumamit ng tamang landas sa direktoryo ng pag-install:
sudo rsync -a /var/www/my_drupal/ /var/www/my_drupal_$(date +%F)
Upang i-back up ang database maaari naming gamitin ang karaniwang
mysqldump
utos:
mysqldump -u root -p > /var/www/my_drupal_database_$(date +%F).sql
o
drush sql-dump
:
cd /var/www/my_drupal
vendor/bin/drush sql-dump > /var/www/my_drupal_database_$(date +%F).sql
Ngayon na nilikha namin ang isang backup maaari naming magpatuloy at mai-update ang lahat ng mga file ng Drupal core sa pamamagitan ng pagpapatakbo ng sumusunod na utos:
sudo -u nginx /usr/local/bin/composer update drupal/core webflo/drupal-core-require-dev symfony/* --with-dependencies
Konklusyon
Binabati kita, matagumpay mong na-install ang Drupal 8 gamit ang kompositor at natutunan kung paano mag-install ng mga module at tema. Maaari mo na ngayong simulan ang pagpapasadya ng iyong site. Ang Drupal 8 Gumagamit ng Gabay ay isang mahusay na lugar ng pagsisimula upang malaman ang higit pa tungkol sa kung paano pamahalaan ang iyong pag-install ng Drupal. Gayundin, huwag kalimutang bisitahin ang proyekto ng Drupal Composer template sa Github.
centos drupal mysql mariadb cms nginx composerBaguhin ang laki, i-edit, mag-upload, sa iyong menu ng konteksto ng right click na maaaring makatulong sa iyo na madaling i-preview, palitan ang laki, i-edit, mag-upload sa ImageShack, mag-edit ng metadata ng IPC, mag-convert ng mga larawan.
XnView Shell Extension ay isang extension para sa mga bintana ng explorer na nagbibigay-daan sa iyo i-edit ang mga larawan mula mismo sa explorer click ang konteksto mismo sa menu ng konteksto.
Paano mag-import ng mga screenshot upang mag-snagit editor, mag-convert ng batch
Kung mayroon kang maraming mga imahe na kailangang mai-import sa isang tool para sa pag-convert ng batch, pagkatapos ay huwag nang tumingin pa. Ang Snagit Editor ay maaaring gawin iyon at marami pa. Narito kung paano.
Paano mag-deploy ng rocket.chat sa mga sentimo 7
Sa tutorial na ito, ipapakita namin sa iyo kung paano mag-install at mag-deploy ng Rocket.Chat sa isang server ng CentOS 7 kasama ang Nginx bilang isang SSL reverse proxy. Ang Rocket.Chat ay isang kumpletong platform ng komunikasyon ng koponan, isang self-host na Slack alternatibo.







