웹사이트 검색

Debian 9에서 Apache와 함께 Joomla를 설치하는 방법(Stretch)


Joomla는 웹 사이트, 블로그, 인트라넷 및 모바일 애플리케이션용 콘텐츠를 구축, 구성, 관리 및 게시하는 데 사용할 수 있는 세계에서 가장 인기 있고 널리 지원되는 오픈 소스 콘텐츠 관리 시스템(CMS) 플랫폼 중 하나입니다. PHP로 작성되었으며 객체 지향 프로그래밍 기술을 사용하고 MySQL 또는 PostgreSQL에 데이터를 저장합니다. Joomla는 기능을 사용자 정의할 수 있는 10,000개 이상의 애드온과 함께 제공됩니다. Joomla는 오픈 소스이므로 누구나 Joomla를 설치하고 필요에 따라 사용자 지정할 수 있습니다. 전 세계 Joomla에서 실행되는 웹사이트의 3% 이상.

여기에서는 Debian 9에서 Joomla를 설치하고 구성하는 방법을 알아봅니다.

요구 사항

  • Debian 9를 실행하는 서버.
  • 서버에 구성된 고정 IP 주소 192.168.0.145
  • 서버에 sudo 권한이 설정된 비루트 사용자

1 시작하기

시작하기 전에 최신 안정 버전으로 시스템을 업데이트해야 합니다. 다음 명령을 실행하여 이를 수행할 수 있습니다.

sudo apt-get update -y
sudo apt-get upgrade -y

시스템이 업데이트되면 시스템을 재부팅하고 sudo 사용자로 로그인합니다.

2 아파치 설치

Joomla를 설치하려면 Apache 웹 서버가 필요합니다. 다음 명령으로 Apache를 설치할 수 있습니다.

sudo apt-get install apache2 libapache2-mod-php7.0 -y

Apache가 설치되면 Apache 서비스를 시작하고 다음 명령을 사용하여 부팅 시 시작되도록 활성화합니다.

sudo systemctl start apache2
sudo systemctl enable apache2

3 PHP7 설치하기

기본적으로 PHP7은 Debian 9 리포지토리에서 사용할 수 있으므로 다음 명령을 사용하여 필요한 모든 라이브러리와 함께 PHP7을 쉽게 설치할 수 있습니다.

sudo apt-get install php7.0 php7.0-cli php7.0-mcrypt php7.0-intl php7.0-mysql php7.0-curl php7.0-gd php7.0-soap php7.0-xml php7.0-zip php7.0-readline php7.0-opcache php7.0-json php7.0-gd -y

설치가 완료되면 php.ini 파일을 일부 변경해야 합니다. 다음 명령으로 이 작업을 수행할 수 있습니다.

sudo nano /etc/php/7.0/apache2/php.ini

다음과 같이 변경합니다.

memory_limit = 256M
upload_max_filesize = 32M
post_max_size = 32M
date.timezone = Asia/Kolkata

완료되면 파일을 저장하고 닫은 다음 데이터베이스 서버 설치 및 구성을 진행할 수 있습니다.

4 MariaDB 설치 및 구성

여기에서는 데이터베이스 목적으로 MariaDB를 사용합니다. 다음 명령으로 MariaDB를 설치할 수 있습니다.

sudo apt-get install mariadb-server -y

MariaDB를 설치한 후 MariaDB 서비스를 시작하고 다음 명령을 사용하여 부팅 시 시작되도록 활성화합니다.

sudo systemctl start mysql
sudo systemctl enable mysql

기본적으로 MariaDB 설치는 보안되지 않으므로 먼저 보안을 설정해야 합니다. 아래와 같이 mysql_secure_installation 스크립트를 실행하여 보안을 설정할 수 있습니다.

sudo mysql_secure_installation

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

NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
      SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!

In order to log into MariaDB to secure it, we'll need the current
password for the root user.  If you've just installed MariaDB, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.

Enter current password for root (enter for none): 
OK, successfully used password, moving on...

Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.

You already have a root password set, so you can safely answer 'n'.

Change the root password? [Y/n] n
 ... skipping.

By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them.  This is intended only for testing, and to make the installation
go a bit smoother.  You should remove them before moving into a
production environment.

Remove anonymous users? [Y/n] Y
 ... Success!

Normally, root should only be allowed to connect from 'localhost'.  This
ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n] Y
 ... Success!

By default, MariaDB comes with a database named 'test' that anyone can
access.  This is also intended only for testing, and should be removed
before moving into a production environment.

Remove test database and access to it? [Y/n] Y
 - Dropping test database...
 ... Success!
 - Removing privileges on test database...
 ... Success!

Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.

Reload privilege tables now? [Y/n] Y
 ... Success!

Cleaning up...

All done!  If you've completed all of the above steps, your MariaDB
installation should now be secure.

Thanks for using MariaDB!

MariaDB가 보호되면 Joomla용 데이터베이스를 생성해야 합니다.

먼저 다음 명령을 사용하여 MariaDB 셸에 로그인합니다.

mysql -u root -p

요청을 받으면 루트 비밀번호를 입력한 후 다음 명령을 사용하여 Joomla용 데이터베이스를 생성합니다.

MariaDB [(none)]> CREATE DATABASE joomla_db;

다음으로 Joomla에 대한 사용자를 생성하고 다음 명령을 사용하여 암호를 설정합니다.

MariaDB [(none)]> CREATE USER ;
MariaDB [(none)]> SET PASSWORD FOR 'joomla'@'localhost' = PASSWORD("password");

다음으로 다음 명령을 사용하여 joomla_db에 권한을 부여해야 합니다.

MariaDB [(none)]> GRANT ALL PRIVILEGES ON joomla_db.* TO 'joomla'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;

다음으로 다음 명령을 사용하여 권한을 플러시합니다.

MariaDB [(none)]> FLUSH PRIVILEGES;

마지막으로 다음 명령을 사용하여 MariaDB 셸을 종료합니다.

MariaDB [(none)]> exit;

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

5 줌라 설치

Apache, PHP 및 MariaDB가 설치되고 구성됩니다. 이제 Joomla를 설치할 차례입니다. Joomla를 설치하려면 최신 버전의 Joomla를 다운로드해야 합니다. 다음 명령을 사용하여 Git 리포지토리에서 다운로드할 수 있습니다.

wget https://github.com/joomla/joomla-cms/releases/download/3.7.3-rc1/Joomla_3.7.3-rc1-Release_Candidate-Full_Package.tar.gz

Joomla가 다운로드되면 다음 명령을 사용하여 다운로드한 아카이브를 Apache 웹 루트 디렉터리에 추출합니다.

sudo mkdir /var/www/html/joomla
sudo tar -xvzf Joomla_3.7.3-rc1-Release_Candidate-Full_Package.tar.gz -C /var/www/html/joomla

그런 다음 다음 명령을 사용하여 joomla 디렉토리의 소유권을 변경하고 적절한 권한을 부여하십시오.

sudo chown -R www-data:www-data /var/www/html/joomla
sudo chmod -R 750 /var/www/html/joomla

다음으로 Joomla용 Apache 가상 호스트 파일을 만들어야 합니다. /etc/apache2/sites-available/ 디렉토리 내에 joomla.conf 파일을 생성하여 이를 수행할 수 있습니다.

sudo nano /etc/apache2/sites-available/joomla.conf

다음 줄을 추가합니다.

<VirtualHost *:80>
ServerAdmin 
DirectoryIndex index.php
DocumentRoot /var/www/html/joomla
ServerName 192.168.0.145
ServerAlias www.yourdomain.com
<Directory /var/www/html/joomla>
Options FollowSymLinks
AllowOverride All
Order allow,deny
allow from all
</Directory>
ErrorLog /var/log/apache2/joomla-error_log
CustomLog /var/log/apache2/joomla-access_log common
</VirtualHost>

완료되면 파일을 저장하고 닫습니다.

다음으로 기본 virtualhost 파일을 비활성화하고 Joomla virtualhost 파일을 활성화해야 합니다. 다음 명령으로 이 작업을 수행할 수 있습니다.

sudo a2dissite 000-default
sudo a2ensite joomla

마지막으로 Apache 서비스를 다시 로드하여 다음 명령을 사용하여 이러한 변경 사항을 적용합니다.

sudo systemctl restart apache2

6 Joomla에 액세스

Joomla 웹 인터페이스에 액세스하기 전에 UFW 방화벽을 통해 HTTP 서비스를 허용해야 합니다.

기본적으로 UFW는 시스템에서 비활성화되어 있으므로 먼저 활성화해야 합니다. 다음 명령으로 활성화할 수 있습니다.

sudo ufw enable

UFW 방화벽이 활성화되면 다음 명령을 실행하여 HTTP 서비스를 허용할 수 있습니다.

sudo ufw allow http

이제 다음 명령을 실행하여 UFW 방화벽의 상태를 확인할 수 있습니다.

sudo ufw status

그런 다음 웹 브라우저를 열고 URL http://192.168.0.145 또는 http://yourdomain.com을 입력하면 다음 페이지가 표시됩니다.

여기에서 사이트 이름, 관리자 이메일, 관리자 사용자 이름 및 비밀번호와 같은 모든 세부 정보를 입력한 후 다음 버튼을 클릭하면 다음 페이지가 표시됩니다.

여기에서 호스트 이름, 데이터베이스 사용자 이름, 암호, 데이터베이스 이름 및 테이블 접두어와 같은 모든 데이터베이스 세부 정보를 입력한 후 다음 버튼을 클릭하면 다음 페이지가 표시됩니다.

여기에서 모든 설정을 확인하고 설치 버튼을 클릭합니다. Joomla가 성공적으로 설치되면 다음 페이지가 표시됩니다.

이제 관리자 버튼을 클릭하면 다음 이미지와 같은 Joomla 로그인 페이지가 표시됩니다.

관리자 자격 증명을 제공하고 로그인 버튼을 클릭하면 다음 이미지에 Joomla 제어판이 표시됩니다.

축하해요! Debian 9에 Joomla를 성공적으로 설치했습니다.