Cách cài đặt Drupal 8 với Apache, MySQL và SSL trên Ubuntu 15.10

theanh

Administrator
Nhân viên
Drupal là một hệ thống quản lý nội dung nguồn mở dựa trên PHP và được phân phối theo Giấy phép Công cộng GNU. Drupal là một nền tảng mở và có thể mở rộng để quản lý nội dung web, cộng đồng của nó cung cấp hơn 31.000 mô-đun để mở rộng các chức năng cốt lõi và Drupal được sử dụng bởi ít nhất 2,1% tất cả các trang web trên internet. Vào cuối năm 2015, dự án Drupal đã phát hành phiên bản chính mới Drupal 8 mà tôi sẽ đề cập trong hướng dẫn này.

Trong hướng dẫn này, tôi sẽ chỉ cho bạn cách cài đặt Drupal 8 trên Ubuntu 15.10 với Apache làm máy chủ web, MySQL làm cơ sở dữ liệu phụ trợ và cách bảo mật trang web bằng SSL.



Điều kiện tiên quyết
  • Ubuntu 15.10 - 64bit.
  • Quyền root.

Bước 1 - Cài đặt Apache và PHP​

Tôi sẽ cài đặt Apache và PHP (và một số mô-đun PHP mà Drupal yêu cầu) bằng apt, trình cài đặt gói Ubuntu. Sau đó, chúng ta sẽ kích hoạt các mô-đun Apache mod_rewrite và mod_ssl.

Cập nhật kho lưu trữ Ubuntu và cài đặt Apache:
Mã:
sudo su
apt-get update
apt-get install apache2 -y
Sau đó, cài đặt PHP 5 và các mô-đun PHP bằng lệnh bên dưới:
Mã:
apt-get install -y php5 libapache2-mod-php5 php5-mysqlnd php5-curl php5-gd php5-intl php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-ming php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl php5-apcu
Bây giờ, hãy kích hoạt Apache SSL và viết lại các mô-đun bằng lệnh 'a2enmod'. Khởi động lại apache để áp dụng các thay đổi cấu hình:
Mã:
a2enmod rewrite ssl
systemctl restart apache2
Kiểm tra xem các mô-đun đã được tải bằng lệnh chưa:
Mã:
apache2ctl -M | egrep 'ssl|rewrite'
Đầu ra sẽ hiển thị các dòng sau:
Mã:
#Enabled
rewrite_module (shared)
ssl_module (shared
Vì vậy, mod-rewrite và mod-ssl đã được tải.

Bây giờ tôi sẽ kiểm tra xem Apache và PHP có hoạt động tốt không. Tạo một tệp mới trong thư mục "/var/www/html/". Tệp chứa lệnh phpinfo():
Mã:
cd /var/www/html
echo "" > info.php
truy cập IP máy chủ: 192.168.1.100/info.php



Kết quả sẽ tương tự như ảnh chụp màn hình này.

Xóa tệp info.php:
Mã:
rm -f/var/www/html/info.php
Vì tệp info.php có thể truy cập công khai nên có nguy cơ bảo mật.


Bước 2 - Cài đặt và cấu hình Cơ sở dữ liệu MySQL​

Trong bước này, chúng ta sẽ cài đặt MySQL 5.6 và tạo một cơ sở dữ liệu mới cho Drupal. Chúng ta sẽ tạo một cơ sở dữ liệu có tên là 'drupaldb', một người dùng mới 'drupaluser' với mật khẩu 'drupaluser@' và cấp cho người dùng quyền truy cập vào cơ sở dữ liệu.

Cài đặt MySQL bằng lệnh bên dưới:
Mã:
apt-get install mysql-server mysql-client -y
Quá trình cài đặt sẽ nhắc nhập mật khẩu MySQL, hãy chọn một mật khẩu an toàn.



Bây giờ hãy đăng nhập vào cơ sở dữ liệu MySQL bằng người dùng "root" và mật khẩu mà bạn đã chọn ở trên, sau đó tạo cơ sở dữ liệu và người dùng cho drupal.

Bạn có thể sử dụng các lệnh bên dưới:
Mã:
mysql -u root -p
 
create database drupaldb;
create user drupaluser@localhost được xác định bởi 'drupaluser@';
grant all privileges on drupaldb.* to drupaluser@localhost được xác định bởi 'drupaluser@';
flush privileges;
exit


Cấu hình cơ sở dữ liệu đã hoàn tất.


Bước 3 - Cài đặt và cấu hình SSL​

Chúng tôi sẽ sử dụng SSL để cho phép truy cập an toàn vào Drupal. Tạo một thư mục mới cho sslin thư mục cấu hình apache, sau đó tạo một chứng chỉ SSL bằng lệnh OpenSSL và thay đổi quyền của tệp chứng chỉ.

Đi tới thư mục apache, tạo một thư mục ssl và nhập vào đó:
Mã:
cd /etc/apache2/
mkdir ssl
cd ssl/
Tạo chứng chỉ SSL tự ký:
Mã:
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/apache2/ssl/drupalssl.key -out /etc/apache2/ssl/drupalssl.crt
Thay đổi quyền của tệp chứng chỉ:
Mã:
chmod 600 *
Tệp chứng chỉ SSL mới là đã tạo.


Bước 4 - Cấu hình Apache Virtualhost​

Trong bước này, chúng ta sẽ tạo một thư mục cho Drupal bên trong thư mục /var/www và thêm một tệp cấu hình máy chủ ảo mới cho Drupal.
Mã:
mkdir -p /var/www/drupal
cd /etc/apache2/sites-available
Bây giờ hãy tạo một tệp mới có tên là 'drupal.conf' bằng vim chứa cấu hình máy chủ ảo Apache:
Mã:
vim drupal.conf
Dán cấu hình máy chủ ảo bên dưới:
Mã:
 ServerName www.mydrupal.co DocumentRoot /var/www/drupal # Chuyển hướng http đến https RedirectMatch 301 (.*) https://www.mydrupal.co$1   # Thông tin máy chủ ServerName www.mydrupal.co ServerAlias mydrupal.co ServerAdmin webmaster@localhost # Gốc web DocumentRoot /var/www/drupal # Cấu hình nhật ký ErrorLog ${APACHE_LOG_DIR}/drupal-error.log CustomLog ${APACHE_LOG_DIR}/drupal-access.log combined # Bật/Tắt SSL cho máy chủ ảo này. SSLEngine on # Tệp chứng chỉ SSL tự ký SSLCertificateFile /etc/apache2/ssl/drupalssl.crt SSLCertificateKeyFile /etc/apache2/ssl/drupalssl.key  Tùy chọn FollowSymLinks AllowOverride All Require all granted   SSLOptions +StdEnvVars   SSLOptions +StdEnvVars  BrowserMatch "MSIE [2-6]" \ nokeepalive ssl-unclean-shutdown \ downgrade-1.0 force-response-1.0 # MSIE 7 trở lên sẽ có thể sử dụng keepalive BrowserMatch "MSIE [17-9]" ssl-unclean-shutdown
Thay thế tên miền www.mydrupal.co bằng tên miền của trang web Drupal của bạn.

Lưu tệp và thoát.

Bây giờ hãy kiểm tra cấu hình apache bằng lệnh:
Mã:
apachectl configtest
Nếu bạn thấy "Cú pháp ok", thì cấu hình apache là chính xác.

Bây giờ hãy kích hoạt máy chủ ảo Drupal và khởi động lại Apache:
Mã:
a2ensite drupal
systemctl restart apache2
máy chủ ảo được tạo và cấu hình.


Bước 5 - Cài đặt và cấu hình Drupal 8​

Chúng ta phải cài đặt git và drush trước khi cài đặt Drupal. Bây giờ hãy cài đặt chúng bằng lệnh apt sau:
Mã:
apt-get install git drush -y
Bây giờ hãy vào thư mục Drupal và tải xuống phiên bản Drupal 8 mới bằng 'lệnh drush'.
Mã:
cd /var/www/drupal
drush dl drupal-8
Di chuyển tất cả các tệp Drupal vào "/var/www/drupal":
Mã:
mv drupal-8.0.1/* .
rm -rf drupal-8.0.1/
Vào thư mục 'sites/default' và sao chép hai tệp cấu hình 'settings.php' và 'services.yml':
Mã:
cd sites/default
cp default.settings.php settings.php
cp default.services.yml services.yml
Sau đó tạo một thư mục mới 'files' và thay đổi quyền của tất cả các tệp và thư mục trong thư mục 'sites/default':
Mã:
mkdir files/
chmod a+w *
Đi đến thư mục '/var/www/' và thay đổi chủ sở hữu của thư mục drupal thành người dùng và nhóm 'www-data':
Mã:
cd /var/www/
chown -R www-data:www-data drupal/
Phần shell của quá trình cài đặt Drupal đã hoàn tất, hãy truy cập tên miền drupal của trang web của bạn "www.mydrupal.co" và bạn sẽ tự động chuyển sang kết nối https.

Chọn ngôn ngữ của bạn, tôi sẽ sử dụng 'Tiếng Anh' ở đây.



Chọn cài đặt 'Chuẩn' profile.



Khi máy chủ của bạn đã sẵn sàng cho Drupal (như máy chủ của chúng tôi khi bạn sử dụng các bước cài đặt ở trên), bạn sẽ được chuyển đến phần 'Xác minh yêu cầu' và tiếp tục cấu hình cơ sở dữ liệu. Điền thông tin chi tiết về cơ sở dữ liệu của cơ sở dữ liệu MySQL mà chúng ta đã tạo trước đó:



Nhấp vào "Lưu và tiếp tục" và đợi cho đến khi quá trình cài đặt hoàn tất.

Cấu hình trang web, tài khoản quản trị, email, tên trang web, v.v.



Drupal đã được cài đặt và cấu hình.




Kết luận​

Drupal là một hệ thống quản lý nội dung dựa trên PHP, được sử dụng bởi ít nhất 2,1% tất cả các trang web trên internet. Cho đến nay, Drupal đã phát hành phiên bản 8 và cung cấp nhiều mô-đun bổ sung giúp Drupal thực sự hữu ích. Chúng ta có thể cài đặt Drupal trên bất kỳ máy chủ nào hỗ trợ MySQL hoặc MariaDB làm cơ sở dữ liệu, máy chủ web như Apache hoặc Nginx và ngôn ngữ lập trình PHP. Drupal dễ cài đặt và cấu hình.
 
Back
Bên trên