Cách cài đặt phần mềm quản lý sự kiện Attendize trên Ubuntu 18.04 LTS

theanh

Administrator
Nhân viên
Attendize là một công cụ bán vé và quản lý sự kiện miễn phí và mã nguồn mở được viết bằng PHP trên nền tảng Laravel. Attendize cung cấp giải pháp đơn giản để quản lý các sự kiện chung mà không phải trả thêm phí. Với Attendize, bạn có thể dễ dàng quản lý nhiều nhà tổ chức/sự kiện và thống kê sự kiện theo thời gian thực. Attendize hỗ trợ nhiều cổng thanh toán như Stripe, PayPal và nhiều cổng khác. Attendize cho phép bạn nhúng tiện ích bán vé vào blog WordPress hiện tại của mình.

Trong hướng dẫn này, chúng tôi sẽ giải thích cách cài đặt Attendize trên máy chủ Ubuntu 18.04 LTS.

Yêu cầu​

  • Máy chủ chạy Ubuntu 18.04.
  • Phiên bản PHP 7.1.3 trở lên với các tiện ích mở rộng OpenSSL, PDO, Mbstring, Fileinfo, GD và Tokenizer.
  • Mật khẩu gốc được cấu hình trên máy chủ của bạn.

Cài đặt Nginx, MariaDB và PHP​

Attendize chạy trên máy chủ web, được viết bằng PHP và sử dụng MariaDB để lưu trữ dữ liệu của chúng. Vì vậy, bạn sẽ cần cài đặt Nginx, MariaDB, PHP và các tiện ích mở rộng PHP cần thiết trên máy chủ của mình. Bạn có thể cài đặt tất cả chúng bằng cách chạy lệnh sau:
Mã:
apt-get install apache2 mariadb-server php7.2 php7.2-cli php7.2-fpm php7.2-common php7.2-mysql php7.2-curl php7.2-json php7.2-zip php7.2-gd php7.2-xml php7.2-mbstring php7.2-opcache php7.2-pgsql curl git unzip -y
Sau khi tất cả các gói cần thiết được cài đặt, hãy khởi động dịch vụ Nginx và MariaDB và cho phép chúng khởi động khi khởi động lại hệ thống bằng lệnh sau:
Mã:
systemctl start nginx
 systemctl enable nginx
 systemctl start mariadb
 systemctl enable mariadb
Sau khi hoàn tất, bạn có thể tiến hành bước tiếp theo.

Cấu hình Cơ sở dữ liệu​

Theo mặc định, MariaDB không được bảo mật. Vì vậy, trước tiên bạn cần bảo mật nó. Bạn có thể bảo mật MariaDB bằng tập lệnh sau:
Mã:
mysql_secure_installation
Trả lời tất cả các câu hỏi như được hiển thị bên dưới:
Mã:
Để đăng nhập vào MariaDB để bảo mật nó, chúng ta sẽ cầnmật khẩu hiện tại cho người dùng root. Nếu bạn vừa cài đặt MariaDB vàchưa đặt mật khẩu root, mật khẩu sẽ để trống,vì vậy, bạn chỉ cần nhấn enter ở đây.Nhập mật khẩu hiện tại cho root (nhập nếu không có):OK, mật khẩu đã sử dụng thành công, tiếp tục...Đặt mật khẩu root đảm bảo rằng không ai có thể đăng nhập vào người dùng root MariaDBnếu không có quyền thích hợp.Bạn đã đặt mật khẩu root, vì vậy bạn có thể trả lời 'n' một cách an toàn.Thay đổi mật khẩu root? [Y/n] n ... bỏ qua.Theo mặc định, cài đặt MariaDB có một người dùng ẩn danh, cho phép bất kỳ aiđăng nhập vào MariaDB mà không cần phải tạo tài khoản người dùng chohọ. Điều này chỉ nhằm mục đích thử nghiệm và giúp quá trình cài đặtdiễn ra suôn sẻ hơn một chút. Bạn nên xóa họ trước khi chuyển sangmôi trường sản xuất.Xóa người dùng ẩn danh? [Y/n] Y ... Thành công!Thông thường, root chỉ được phép kết nối từ 'localhost'. Điều nàyđảm bảo rằng không ai có thể đoán được mật khẩu root từ mạng.Không cho phép root đăng nhập từ xa? [Y/n] Y ... Thành công!Theo mặc định, MariaDB đi kèm với một cơ sở dữ liệu có tên là 'test' mà bất kỳ ai cũng có thểtruy cập. Điều này cũng chỉ dành cho mục đích thử nghiệm và nên xóatrước khi chuyển sang môi trường sản xuất.Xóa cơ sở dữ liệu thử nghiệm và truy cập vào cơ sở dữ liệu đó? [Y/n] Có - Đang xóa cơ sở dữ liệu thử nghiệm... ... Thành công! - Đang xóa các đặc quyền trên cơ sở dữ liệu thử nghiệm... ... Thành công!Tải lại các bảng đặc quyền sẽ đảm bảo rằng tất cả các thay đổi đã thực hiện cho đến naysẽ có hiệu lực ngay lập tức.Tải lại các bảng đặc quyền ngay bây giờ? [Y/n] Có ... Thành công!Đang dọn dẹp...Xong! Nếu bạn đã hoàn tất tất cả các bước trên, thì cài đặt MariaDBcủa bạn hiện đã an toàn.Cảm ơn bạn đã sử dụng MariaDB!
Sau khi MariaDB được bảo mật, hãy đăng nhập vào shell MariaDB bằng lệnh sau:
Mã:
mysql -u root -p
Cung cấp mật khẩu gốc của bạn khi được nhắc. Sau đó, tạo cơ sở dữ liệu và người dùng cho Attendize bằng lệnh sau:
Mã:
MariaDB [(none)]> CREATE DATABASE attendizedb;
 MariaDB [(none)]> GRANT ALL PRIVILEGES ON attendizedb.* TO 'attendize'@'localhost' IDENTIFIED BY "password";
Tiếp theo, flush các đặc quyền và thoát khỏi shell MariaDB bằng lệnh sau:
Mã:
MariaDB [(none)]> FLUSH PRIVILEGES;
 MariaDB [(none)]> EXIT;
Sau khi cơ sở dữ liệu được tạo, bạn có thể tiến hành bước tiếp theo.

Cài đặt Attendize​

Trước khi tải xuống Attendize, bạn sẽ cần cài đặt Composer vào hệ thống của mình. Bạn có thể cài đặt Composer chỉ bằng cách chạy lệnh sau:
Mã:
curl -sS https://getcomposer.org/installer -o composer-setup.php
 php composer-setup.php --install-dir=/usr/local/bin --filename=composer
Sau khi cài đặt Composer, bạn có thể kiểm tra phiên bản Composer bằng lệnh sau:
Mã:
composer --version
Đầu ra sẽ tương tự như bên dưới:
Mã:
Composer version 1.8.6 2019-06-11 15:03:05
Tiếp theo, tải xuống phiên bản mới nhất của Attendize từ kho lưu trữ Git vào thư mục gốc web Nginx bằng lệnh sau:
Mã:
cd /var/www/html/
 git clone https://github.com/Attendize/Attendize attendize
Tiếp theo, thay đổi thư mục thành attendize và đổi tên .env.example file:
Mã:
cd attendize
 mv .env.example .env
Tiếp theo, mở file .env bằng trình soạn thảo văn bản yêu thích của bạn:
Mã:
nano .env
Xác định cài đặt cơ sở dữ liệu của bạn như hiển thị bên dưới:
Mã:
DB_TYPE=mysqlDB_HOST=dbDB_PORT=3306DB_DATABASE=attendizedbDB_USERNAME=attendizeDB_PASSWORD=password
Lưu và đóng file khi bạn hoàn tất. Sau đó, cấp quyền thích hợp cho thư mục attendize bằng lệnh sau:
Mã:
chown -R www-data:www-data /var/www/html/attendize
 chmod -R 755 /var/www/html/attendize
Sau khi hoàn tất, bạn có thể tiến hành bước tiếp theo.

Cấu hình Nginx cho Attendize​

Tiếp theo, tạo tệp máy chủ ảo Nginx cho Attendize.
Mã:
nano /etc/nginx/sites-available/attendize.conf
Thêm các dòng sau:
Mã:
server { listen 80; listen [::]:80; server_name example.com; root /var/www/html/attendize/public; index index.php; location / { try_files $uri $uri/ /index.php$is_args$args; } location ~ \.php$ { try_files $uri =404; fastcgi_pass unix:/var/run/php/php7.2-fpm.sock; # Kiểm tra fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; }}
Lưu và đóng tệp. Sau đó, bật tệp máy chủ ảo bằng lệnh sau:
Mã:
ln -s /etc/nginx/sites-available/attendize.conf /etc/nginx/sites-enabled/
Tiếp theo, kiểm tra Nginx xem có lỗi cú pháp nào không bằng lệnh sau:
Mã:
nginx -t
Đầu ra sẽ tương tự như bên dưới:
Mã:
nginx: cú pháp tệp cấu hình /etc/nginx/nginx.conf là oknginx: tệp cấu hình /etc/nginx/nginx.conf đã kiểm tra thành công
Cuối cùng, tải lại Nginx và dịch vụ PHP-FPM để áp dụng tất cả các thay đổi cấu hình:
Mã:
systemctl reload nginx
 systemctl restart php7.2-fpm
Bạn có thể xác minh trạng thái của Nginx bằng lệnh sau:
Mã:
systemctl status nginx
Bạn sẽ thấy đầu ra sau:
Mã:
? nginx.service - Một máy chủ web hiệu suất cao và một máy chủ proxy ngược Đã tải: đã tải (/lib/systemd/system/nginx.service; đã bật; cài đặt trước của nhà cung cấp: đã bật) Đang hoạt động: đang hoạt động (đang chạy) kể từ Thứ Hai 2019-07-22 05:07:19 UTC; 3 giây trước Tài liệu: man:nginx(8) Quy trình: 17781 ExecStop=/sbin/start-stop-daemon --quiet --stop --retry QUIT/5 --pidfile /run/nginx.pid (code=exited, status=0/SUCCESS) Quy trình: 17793 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS) Tiến trình: 17783 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS) PID chính: 17794 (nginx) Nhiệm vụ: 2 (giới hạn: 1114) CGroup: /system.slice/nginx.service ??17794 nginx: tiến trình chính /usr/sbin/nginx -g daemon on; master_process on; ??17796 nginx: tiến trình công nhân22 tháng 7 05:07:19 ubuntu1804 systemd[1]: Đã dừng Một máy chủ web hiệu suất cao và một máy chủ proxy ngược.22/07 05:07:19 ubuntu1804 systemd[1]: Đang khởi động Một máy chủ web hiệu suất cao và một máy chủ proxy ngược...22/07 05:07:19 ubuntu1804 systemd[1]: nginx.service: Không phân tích được PID từ tệp /run/nginx.pid: Đối số không hợp lệ22/07 05:07:19 ubuntu1804 systemd[1]: Đang khởi động Một máy chủ web hiệu suất cao và một máy chủ proxy ngược.
Sau khi hoàn tất, bạn có thể tiến hành bước tiếp theo.

Truy cập Attendize​

Bây giờ, hãy mở trình duyệt web của bạn và nhập URL http://example.com. Bạn sẽ được chuyển hướng đến trang sau:









Đảm bảo rằng tất cả các tiện ích mở rộng bắt buộc đã được cài đặt. Sau đó, cung cấp thông tin cơ sở dữ liệu, thông tin email và nhấp vào nút CÀI ĐẶT THAM GIA. Bạn sẽ thấy trang sau:



Cung cấp tên, địa chỉ email và mật khẩu của bạn. Sau đó, nhấp vào nút ĐĂNG KÝ. Bạn sẽ thấy trang sau:



Bây giờ, cung cấp thông tin đăng nhập của bạn và nhấp vào nút ĐĂNG NHẬP. Bạn sẽ thấy trang sau:



Bây giờ, cung cấp tên người tổ chức, email, mô tả của bạn và nhấp vào nút CREATE ORGANISER. Bạn sẽ thấy trang sau:



Xin chúc mừng! Bạn đã cài đặt thành công ứng dụng bán vé và quản lý sự kiện Attendize trên máy chủ Ubuntu 18.04 của mình. Bây giờ bạn có thể tổ chức và quản lý số lượng sự kiện không giới hạn mà không mất thêm bất kỳ chi phí nào khi sử dụng Attendize. Để biết thêm thông tin, bạn có thể truy cập tài liệu chính thức của Attendize tại Attendize Doc
 
Back
Bên trên