소프트웨어 설치 · 5 min read · Oct 02, 2025

Ubuntu 18.04 LTS에 Attendize 이벤트 관리 소프트웨어 설치하기

Attendize는 Laravel 프레임워크 위에 PHP로 작성된 무료 오픈 소스 티켓 판매 및 이벤트 관리 소프트웨어입니다. Attendize는 추가 요금 없이 일반 입장 이벤트를 관리하기 위한 간단한 솔루션을 제공합니다. Attendize를 사용하면 여러 주최자/이벤트 및 실시간 이벤트 통계를 쉽게 관리할 수 있습니다. Attendize는 Stripe, PayPal 등 여러 결제 게이트웨이를 지원합니다. Attendize는 기존 WordPress 블로그에 티켓 판매 위젯을 삽입할 수 있게 해줍니다.

이 튜토리얼에서는 Ubuntu 18.04 LTS 서버에 Attendize를 설치하는 방법을 설명합니다.

요구 사항

  • Ubuntu 18.04를 실행하는 서버.
  • OpenSSL, PDO, Mbstring, Fileinfo, GD 및 Tokenizer 확장이 포함된 PHP 버전 7.1.3 이상.
  • 서버에 루트 비밀번호가 설정되어 있어야 합니다.

Nginx, MariaDB 및 PHP 설치

Attendize는 PHP로 작성된 웹 서버에서 실행되며, 데이터를 저장하기 위해 MariaDB를 사용합니다. 따라서 서버에 Nginx, MariaDB, PHP 및 필요한 PHP 확장을 설치해야 합니다. 다음 명령어를 실행하여 모두 설치할 수 있습니다:

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

필요한 패키지가 모두 설치되면, Nginx 및 MariaDB 서비스를 시작하고 시스템 재부팅 시 자동으로 시작되도록 설정합니다:

systemctl start nginx  
systemctl enable nginx  
systemctl start mariadb  
systemctl enable mariadb

작업이 완료되면 다음 단계로 진행할 수 있습니다.

데이터베이스 구성

기본적으로 MariaDB는 보안이 설정되어 있지 않습니다. 따라서 먼저 보안을 설정해야 합니다. 다음 스크립트를 사용하여 MariaDB를 보안 설정할 수 있습니다:

mysql_secure_installation

아래와 같이 모든 질문에 답하십시오:

MariaDB에 로그인하여 보안을 설정하려면 현재 루트 사용자 비밀번호가 필요합니다. MariaDB를 방금 설치했으며 루트 비밀번호를 아직 설정하지 않았다면 비밀번호는 비어 있으므로 여기서 그냥 Enter를 누르십시오.

루트의 현재 비밀번호 입력 (없으면 Enter): 
OK, 비밀번호를 성공적으로 사용했습니다. 계속 진행합니다...

루트 비밀번호를 설정하면 아무도 적절한 권한 없이 MariaDB 루트 사용자로 로그인할 수 없습니다.

이미 루트 비밀번호가 설정되어 있으므로 안전하게 'n'이라고 대답할 수 있습니다.

루트 비밀번호를 변경하시겠습니까? [Y/n] n
 ... 건너뜁니다.

기본적으로 MariaDB 설치에는 익명 사용자가 있어 누구나 사용자 계정을 생성하지 않고도 MariaDB에 로그인할 수 있습니다. 이는 테스트 용도로만 의도된 것이며 설치를 좀 더 원활하게 진행하기 위한 것입니다. 프로덕션 환경으로 이동하기 전에 이를 제거해야 합니다.

익명 사용자를 제거하시겠습니까? [Y/n] Y
 ... 성공!

일반적으로 루트는 'localhost'에서만 연결할 수 있어야 합니다. 이는 누군가가 네트워크에서 루트 비밀번호를 추측할 수 없도록 보장합니다.

원격 루트 로그인을 금지하시겠습니까? [Y/n] Y
 ... 성공!

기본적으로 MariaDB에는 누구나 접근할 수 있는 'test'라는 데이터베이스가 있습니다. 이는 테스트 용도로만 의도된 것이며 프로덕션 환경으로 이동하기 전에 제거해야 합니다.

테스트 데이터베이스 및 접근 권한을 제거하시겠습니까? [Y/n] Y
 - 테스트 데이터베이스 삭제 중...
 ... 성공!
 - 테스트 데이터베이스에 대한 권한 제거 중...
 ... 성공!

권한 테이블을 다시 로드하면 지금까지 변경된 모든 사항이 즉시 적용됩니다.

권한 테이블을 지금 다시 로드하시겠습니까? [Y/n] Y
 ... 성공!

정리 중...

모든 작업이 완료되었습니다! 위의 모든 단계를 완료했다면, 이제 MariaDB 설치가 보안이 설정되어 있어야 합니다.

MariaDB를 사용해 주셔서 감사합니다!

MariaDB 보안 설정이 완료되면 다음 명령어로 MariaDB 셸에 로그인합니다:

mysql -u root -p

프롬프트가 나타나면 루트 비밀번호를 입력합니다. 그런 다음 다음 명령어로 Attendize용 데이터베이스와 사용자를 생성합니다:

MariaDB [(none)]> CREATE DATABASE attendizedb;  
MariaDB [(none)]> GRANT ALL PRIVILEGES ON attendizedb.* TO 'attendize'@'localhost' IDENTIFIED BY "password";

다음으로, 권한을 플러시하고 다음 명령어로 MariaDB 셸에서 나옵니다:

MariaDB [(none)]> FLUSH PRIVILEGES;  
MariaDB [(none)]> EXIT;

데이터베이스가 생성되면 다음 단계로 진행할 수 있습니다.

Attendize 설치

Attendize를 다운로드하기 전에 시스템에 Composer를 설치해야 합니다. 다음 명령어를 실행하여 Composer를 설치할 수 있습니다:

curl -sS https://getcomposer.org/installer -o composer-setup.php  
php composer-setup.php --install-dir=/usr/local/bin --filename=composer

Composer를 설치한 후 다음 명령어로 Composer의 버전을 확인할 수 있습니다:

composer --version

출력은 아래와 유사해야 합니다:

Composer version 1.8.6 2019-06-11 15:03:05

다음으로, Git 저장소에서 Nginx 웹 루트 디렉토리로 Attendize의 최신 버전을 다운로드합니다:

cd /var/www/html/  
git clone https://github.com/Attendize/Attendize attendize

다음으로, attendize 디렉토리로 변경하고 .env.example 파일의 이름을 변경합니다:

cd attendize  
mv .env.example .env

다음으로, 좋아하는 텍스트 편집기로 .env 파일을 엽니다:

nano .env

아래와 같이 데이터베이스 설정을 정의합니다:

DB_TYPE=mysql
DB_HOST=db
DB_PORT=3306
DB_DATABASE=attendizedb
DB_USERNAME=attendize
DB_PASSWORD=password 

작업이 완료되면 파일을 저장하고 닫습니다. 그런 다음 다음 명령어로 attendize 디렉토리에 적절한 권한을 부여합니다:

chown -R www-data:www-data /var/www/html/attendize  
chmod -R 755 /var/www/html/attendize

작업이 완료되면 다음 단계로 진행할 수 있습니다.

Attendize용 Nginx 구성

다음으로, Attendize를 위한 Nginx 가상 호스트 파일을 생성합니다.

nano /etc/nginx/sites-available/attendize.conf

다음 줄을 추가합니다:

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; # 확인하세요
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }
}

파일을 저장하고 닫습니다. 그런 다음 다음 명령어로 가상 호스트 파일을 활성화합니다:

ln -s /etc/nginx/sites-available/attendize.conf /etc/nginx/sites-enabled/

다음으로, 다음 명령어로 Nginx의 구문 오류를 확인합니다:

nginx -t

출력은 아래와 유사해야 합니다:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

마지막으로, 다음 명령어로 Nginx 및 PHP-FPM 서비스를 다시 로드하여 모든 구성 변경 사항을 적용합니다:

systemctl reload nginx  
systemctl restart php7.2-fpm

다음 명령어로 Nginx의 상태를 확인할 수 있습니다:

systemctl status nginx

다음과 같은 출력을 볼 수 있어야 합니다:

? nginx.service - A high performance web server and a reverse proxy server
   Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
   Active: active (running) since Mon 2019-07-22 05:07:19 UTC; 3s ago
     Docs: man:nginx(8)
  Process: 17781 ExecStop=/sbin/start-stop-daemon --quiet --stop --retry QUIT/5 --pidfile /run/nginx.pid (code=exited, status=0/SUCCESS)
  Process: 17793 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
  Process: 17783 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
 Main PID: 17794 (nginx)
    Tasks: 2 (limit: 1114)
   CGroup: /system.slice/nginx.service
           ??17794 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
           ??17796 nginx: worker process

Jul 22 05:07:19 ubuntu1804 systemd[1]: Stopped A high performance web server and a reverse proxy server.
Jul 22 05:07:19 ubuntu1804 systemd[1]: Starting A high performance web server and a reverse proxy server...
Jul 22 05:07:19 ubuntu1804 systemd[1]: nginx.service: Failed to parse PID from file /run/nginx.pid: Invalid argument
Jul 22 05:07:19 ubuntu1804 systemd[1]: Started A high performance web server and a reverse proxy server.

작업이 완료되면 다음 단계로 진행할 수 있습니다.

Attendize 접근

이제 웹 브라우저를 열고 URL http://example.com을 입력합니다. 다음 페이지로 리디렉션됩니다:

서버 설정 확인 1

서버 설정 확인 2

데이터베이스 설정

이메일 설정

필요한 모든 확장이 설치되어 있는지 확인하십시오. 그런 다음 데이터베이스 정보, 이메일 정보를 제공하고 INSTALL ATTENDIZE 버튼을 클릭합니다. 다음 페이지가 표시됩니다:

Attendize 가입

이름, 이메일 주소 및 비밀번호를 입력합니다. 그런 다음 SIGN UP 버튼을 클릭합니다. 다음 페이지가 표시됩니다:

Attendize 로그인

이제 로그인 세부정보를 입력하고 LOGIN 버튼을 클릭합니다. 다음 페이지가 표시됩니다:

주최자 생성

이제 주최자 이름, 이메일, 설명을 입력하고 CREATE ORGANISER 버튼을 클릭합니다. 다음 페이지가 표시됩니다:

이벤트 생성

축하합니다! Ubuntu 18.04 서버에 Attendize 티켓 판매 및 이벤트 관리 애플리케이션을 성공적으로 설치했습니다. 이제 Attendize를 사용하여 추가 비용 없이 무제한 이벤트를 조직하고 관리할 수 있습니다. 더 많은 정보는 Attendize 공식 문서에서 확인할 수 있습니다: Attendize Doc

Share: X/Twitter LinkedIn

새 게시물을 받은 편지함에서 받기

스팸은 없습니다. 언제든지 구독 해지 가능합니다.