Cài đặt Wordpress trên LAMP

Last modified by Admin on 2024/08/05 15:10

  1. Cấu trúc thư mục của Vhost apache trong linux

Trên apache server, mỗi website sẽ có một thư mục chứa mà nguồn riêng, hay còn gọi là thư mục gốc. nhiệm vụ của server là dựa vào domain đang request để gọi tới đúng thư mục gốc.

  • Ta sẽ tạo cấu trúc cho website được đặt trong /var/www/[your-domain]
  • Đổi quyền folder cho người dùng hiện tại, ta dùng lệnh:
sudo chown R $USER:$USER /var/www/longninja/

1722845111982-559.png

  • Truy cập vào file config của apache để chỉnh sửa đường dẫn tới vhost vừa tạo ta dùng lệnh:
sudo vim /etc/apache2/sites-available/longninja.conf

1722845111985-190.png

<VirtualHost *:80>

      ServerName longninja
      ServerAlias www.longninja
      ServerAdmin webmaster@localhost
      DocumentRoot /var/www/longninja
      ErrorLog ${APACHE_LOG_DIR}/error.log
      CustomLog ${APACHE_LOG_DIR}/access.log combined

</VirtualHost>

Thay những vị trí đánh dấu là domain của bạn. sau đó save file lại bằng nút ESC -> :wq -> ENTER

  • Tiếp theo, ta sử dụng a2ensite để kích hoạt virtual host vừa tạo:
sudo a2ensite [your_domain]

1722845111986-604.png

  • Ta cũng cần tắt website mặt định của apache, ta nhập lệnh:
sudo a2dissite 000-default

1722845111986-356.png

Sau đó reload lại dịch vụ để xác nhận các thay đổi

systemctl reload apache2

1722845111987-453.png

Sau đó ra thử tạo một trang html trong thư mục vhost để xem các thay đổi đã chạy thành công chưa. Ta sẽ tạo file index.html bằng lệnh:

sudo vim /var/www/[your_domain]/index.htm

1722845111987-915.png

Sau đó nhập ip vào thanh url trên trình duyệt để kiểm tra kết quả.

1722845111988-595.png

  1. 2. Tạo database và user cho wordpress

Ta tạo riêng database và user cho wordpress có quyền quản lý và lưu trữ:

sudo su
mysql –u root –p

1722845111988-952.png

  • Sau khi nhập password và truy cập thành công, ta tiến hành tạo database:
create database wordpress default character set utf8 collate utf_8_unicode_ci;

1722845111989-435.png

Tiếp theo là tạo user “wordpress” riêng để quản lý cho database đó:

create user ‘ [your-username]’ @’%’ identified with mysql_native_password by ‘ [your-password]’;

1722845111989-470.png

Lưu ý: mật khẩu phải có chữ in hoa, in thường, số.

  • Cấp quyền cho user vừa tạo quản lí database wordpress:
grant all on wordpress./ to ‘[your-username] ‘@’%’;

1722845111989-342.png

  • Xác nhận các thay đổi vừa rồi và thoát khởi console của mysql :
flush privileges;
exit;

1722845111990-411.png

  1. 3. Cài đặt các phần mở rộng của php
  • Để có thể chạy được wordpress, ta cần cài đặt thêm các thư viện của php:

Sudo apt update

Sudo apt install –y php-curl php gd php-mbstring php-xml php-xmlrpc php-soap php-intl php-zip

  • Restart lại  dịch vụ của apache để xác nhận các thay đổi.

Sudo systemctl restart apache2

  1. 4. Cấu hình để apache cho phép ghi đè file .htaccess
  • Hiện tại, việc sử dụng file .htaccess đã bị vô hiệu hóa. Wordpress và nhiều plugin wordpress sử dụng tệp này để điều chỉnh trong thư mục đối với hành bi của máy chủ web.

Sudo vim /etc/apache2/sites-available/longninja.conf

  • Ta thêm các dòng sau vào file để cho phép ghi đè file.
<Directory /var/www/longninja/>
            AllowOverride All
</Directory>

1722845111991-831.png

  • ở vị trí màu đỏ thay đổi theo vhost bạn đã cài ở trên.

Tiếp theo bật module Rewrite cho wordpress

        sudo a2enmod rewrite

Kiểm tra lại các config xem đã đúng cấu trúc hay chưa:

            sudo apache2ctl configtest

1722845111992-401.png

  • nếu hiện kết quả Syntax OK nghĩa là bạn đã cài đặt đúng cú pháp.restart lại dịch vụ để áp dụng các thay đổi trên.

Sudo systemctl restart apache2

  1. Cài đặt Wordpress
    1. Tải và cài wordpress
  • Ta tải bản mới nhất của wordpress tại thư mục /tmp:

Cd /tmp

Curl -O https://wordpress.org/latest.tar.gz

  • Tiến hành giải nén thư mục wordpress vừa tải

Tar xzvf wordpress-5.8.2.tar.gz

  • Tạo một tệp .htaccess trong thư mục wordpress

Touch /tmp/wordpress/.htaccess

  • Copy file config từ mẫu có sẵn trong thư mục wordpress để sử dụng sau này:

Cp /tmp/wordpress/wp-config-sample.php /tmp/wordpress/wp-config.php

  • Ta sẽ tạo thư mục upgrade để wordpress không gặp lỗi khi tự động cập nhật:

Mkdir /tmp/wordpress/wp-content/upgrade

  • Sau đó copy thư mực đó vào thư mục vhost đã tạo bên trên:

Sudo cp –a /tmp/wordpress/. /var/www/longninja


    1. Cấu hình wordpress
  • Đầu tiên, ta cần cấp quyền cho apache sử dụng thư mục vhost trên. Apache có tên user và group user là www-data:

sudo chown –R www-data:www-data /var/www/longninja

1722845111993-264.png

  • Tiếp theo, ta gắn quyền 750 cho thư mục và 640 cho các file bằng 2 lệnh sau:

Sudo find /var/www/longninja/ -type d –exec chmod 750 {} \;

Sudo find /var/www/longninja/ -type f –exec chmod 640 {} \;

  • Ta sẽ sử dụng trình tạo key tự đọng để thêm vào trong file config.

Curl –s https://api.wordpress.org/secret-key/1.1/salt/

  • Mở file config lên và ghi đè vào nội dung key vào file:

Sudo vim /var/www/longninja/wp-config.php

1722845111994-193.png

1722845111995-627.png

Tiếp theo, ta sẽ thay thông tin database vào file config này:

1722845111997-448.png

            Thay đổi các giá trị theo cài đặt phía trên. Sau đó lưu file :wq -> Enter


    1. Hoàn thành các thiết lập cuối

1722845111998-862.png

  • Đăng nhập để xác nhận thành công.

1722845111999-214.png

  • Kết quả cuối cùng:

1722845112000-168.png