기계적 인조 인간

Ubuntu 18.04에서 Apache와 함께 Joomla를 설치하는 방법

Deepin 20 удивляет, Fedora 33, Pop OS 20.10, Ubuntu Budgie, Studio 20.10 и другие дистрибутивы Linux

Deepin 20 удивляет, Fedora 33, Pop OS 20.10, Ubuntu Budgie, Studio 20.10 и другие дистрибутивы Linux

차례:

Anonim

Joomla는 수십만 개의 웹 사이트를 지원하는 가장 인기있는 오픈 소스 컨텐츠 관리 시스템 중 하나입니다. PHP로 작성되었으며 무료 및 프리미엄 확장 프로그램 및 테마로 확장 할 수있는 다양한 기능을 제공합니다. Joomla를 사용하면 전자 상거래 상점, 개인 웹 사이트, 소셜 사이트 또는 블로그를 쉽게 구축 할 수 있습니다.

이 튜토리얼에서는 Ubuntu 18.04에 Joomla를 설치하는 방법을 설명합니다. 우리는 Apache를 웹 서버, SSL 인증서, 최신 PHP 7.2 및 MySQL / MariaDB를 데이터베이스 서버로 사용하여 LAMP 스택을 사용할 것입니다.

전제 조건

이 학습을 계속하기 전에 다음 전제 조건이 충족되는지 확인하십시오.

  • 도메인 이름이 서버 퍼블릭 IP를 가리 키도록하십시오. example.com 을 사용합니다. sudo 권한을 가진 사용자로 로그인합니다. 다음 지침에 따라 Apache를 설치합니다. 도메인에 SSL 인증서가 설치되어 있습니다. 다음 지침에 따라 무료 Let 's Encrypt SSL 인증서를 설치할 수 있습니다.

MySQL 데이터베이스 생성

Joomla는 기사, 카테고리, 사용자, 확장명 및 테마 설정과 같은 데이터를 MySQL, PostgreSQL 또는 MS SQL 데이터베이스에 저장할 수 있습니다.

MySQL을 백엔드 데이터베이스로 사용합니다. Ubuntu 서버에 MySQL이 설치되어 있지 않은 경우 다음을 입력하여 설치할 수 있습니다.

sudo apt-get update sudo apt-get install mysql-server

다음을 입력하여 MySQL 콘솔에 로그인하십시오.

sudo mysql

MySQL 셸 내에서 다음 SQL 문을 실행하여 데이터베이스를 만듭니다.

CREATE DATABASE joomla CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;

다음으로, 새 MySQL 사용자를 작성하고 새 데이터베이스에서이 사용자에게 권한을 부여하십시오.

GRANT ALL ON joomla.* TO 'joomlauser'@'localhost' IDENTIFIED BY 'change-with-strong-password';

완료되면 다음을 입력하여 mysql 콘솔을 종료하십시오.

EXIT

PHP 설치

Ubuntu 18.04의 기본 PHP 버전 인 PHP 7.2는 완전히 지원되며 Joomla에 권장됩니다.

다음 명령을 사용하여 필요한 모든 PHP 확장을 PHP에 설치하십시오.

sudo apt update sudo apt install php7.2 php7.2-cli php7.2-mysql php7.2-json php7.2-opcache php7.2-mbstring php7.2-intl php7.2-xml php7.2-gd php7.2-zip php7.2-curl php7.2-xmlrpc php7.2-xmlrpc

sed php.ini 파일을 편집하여 권장 PHP 옵션을 설정하십시오.

sudo sed -i "s/memory_limit =.*/memory_limit = 512M/" /etc/php/7.2/apache2/php.ini sudo sed -i "s/upload_max_filesize =.*/upload_max_filesize = 256M/" /etc/php/7.2/apache2/php.ini sudo sed -i "s/post_max_size =.*/post_max_size = 256M/" /etc/php/7.2/apache2/php.ini sudo sed -i "s/upload_max_filesize =.*/upload_max_filesize = 256M/" /etc/php/7.2/apache2/php.ini sudo sed -i "s/post_max_size =.*/post_max_size = 256M/" /etc/php/7.2/apache2/php.ini sudo sed -i "s/output_buffering =.*/output_buffering = Off/" /etc/php/7.2/apache2/php.ini sudo sed -i "s/max_execution_time =.*/max_execution_time = 300/" /etc/php/7.2/apache2/php.ini sudo sed -i "s/;date.timezone.*/date.timezone = UTC/" /etc/php/7.2/apache2/php.ini

새로 설치된 PHP 확장이로드되도록 아파치를 다시 시작하십시오.

sudo systemctl restart apache2

Joomla 다운로드

이 기사를 작성할 당시 최신 버전의 Joomla는 버전 3.9.4입니다.

Joomla 아카이브를 다운로드하기 전에 먼저 Joomla 파일을 보유 할 디렉토리를 작성하고 해당 디렉토리로 이동하십시오.

sudo mkdir -p /var/www/example.com cd /var/www/example.com

다음 wget 명령을 사용하여 Joomla 다운로드 페이지에서 Joomla의 현재 릴리스를 다운로드하십시오.

sudo wget

다운로드가 완료되면 아카이브의 압축을 풀고 파일을 도메인의 문서 루트 디렉토리로 이동하십시오.

sudo unzip Joomla_3-9-4-Stable-Full_Package.zip

웹 서버가 사이트의 파일 및 디렉토리에 완전히 액세스 할 수 있도록 chown 명령을 사용하여 디렉토리 소유자를 www-data 로 변경하십시오.

sudo chown -R www-data: /var/www/example.com

아파치 설정

지금까지이 학습서의 전제 조건을 확인하지 않으면 시스템에 SSL 인증서가있는 Apache가 이미 설치되어 있어야합니다.

다음 단계는 Apache 가상 호스트 구성을 편집하는 것입니다.

sudo nano /etc/apache2/sites-available/example.com.conf

다음 Apache 구성은 http https , www www non-www 도메인으로 리디렉션하고 HTTP2를 활성화합니다. example.com 을 Joomla 도메인으로 바꾸고 SSL 인증서 파일의 올바른 경로를 설정하는 것을 잊지 마십시오.

/etc/apache2/sites-available/example.com.conf

ServerName example.com ServerAlias www.example.com Redirect permanent / https://example.com/ ServerName example.com ServerAlias www.example.com Protocols h2 http:/1.1 Redirect permanent / https://example.com/ DirectoryIndex index.html index.php DocumentRoot /var/www/example.com ErrorLog ${APACHE_LOG_DIR}/example.com-error.log CustomLog ${APACHE_LOG_DIR}/example.com-access.log combined SSLEngine On SSLCertificateFile /etc/letsencrypt/live/example.com/cert.pem SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem SSLCertificateChainFile /etc/letsencrypt/live/example.com/chain.pem Options FollowSymLinks AllowOverride All Require all granted ServerName example.com ServerAlias www.example.com Redirect permanent / https://example.com/ ServerName example.com ServerAlias www.example.com Protocols h2 http:/1.1 Redirect permanent / https://example.com/ DirectoryIndex index.html index.php DocumentRoot /var/www/example.com ErrorLog ${APACHE_LOG_DIR}/example.com-error.log CustomLog ${APACHE_LOG_DIR}/example.com-access.log combined SSLEngine On SSLCertificateFile /etc/letsencrypt/live/example.com/cert.pem SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem SSLCertificateChainFile /etc/letsencrypt/live/example.com/chain.pem Options FollowSymLinks AllowOverride All Require all granted ServerName example.com ServerAlias www.example.com Redirect permanent / https://example.com/ ServerName example.com ServerAlias www.example.com Protocols h2 http:/1.1 Redirect permanent / https://example.com/ DirectoryIndex index.html index.php DocumentRoot /var/www/example.com ErrorLog ${APACHE_LOG_DIR}/example.com-error.log CustomLog ${APACHE_LOG_DIR}/example.com-access.log combined SSLEngine On SSLCertificateFile /etc/letsencrypt/live/example.com/cert.pem SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem SSLCertificateChainFile /etc/letsencrypt/live/example.com/chain.pem Options FollowSymLinks AllowOverride All Require all granted ServerName example.com ServerAlias www.example.com Redirect permanent / https://example.com/ ServerName example.com ServerAlias www.example.com Protocols h2 http:/1.1 Redirect permanent / https://example.com/ DirectoryIndex index.html index.php DocumentRoot /var/www/example.com ErrorLog ${APACHE_LOG_DIR}/example.com-error.log CustomLog ${APACHE_LOG_DIR}/example.com-access.log combined SSLEngine On SSLCertificateFile /etc/letsencrypt/live/example.com/cert.pem SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem SSLCertificateChainFile /etc/letsencrypt/live/example.com/chain.pem Options FollowSymLinks AllowOverride All Require all granted ServerName example.com ServerAlias www.example.com Redirect permanent / https://example.com/ ServerName example.com ServerAlias www.example.com Protocols h2 http:/1.1 Redirect permanent / https://example.com/ DirectoryIndex index.html index.php DocumentRoot /var/www/example.com ErrorLog ${APACHE_LOG_DIR}/example.com-error.log CustomLog ${APACHE_LOG_DIR}/example.com-access.log combined SSLEngine On SSLCertificateFile /etc/letsencrypt/live/example.com/cert.pem SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem SSLCertificateChainFile /etc/letsencrypt/live/example.com/chain.pem Options FollowSymLinks AllowOverride All Require all granted

활성화되지 않은 경우 도메인에 가상 호스트를 활성화하십시오. 이 명령은 sites-available 에서 sites-enabled 디렉토리로 심볼릭 링크를 생성합니다:

sudo a2ensite example.com

새 구성을 적용하려면 다음을 입력하여 Apache 서비스를 다시 시작하십시오.

sudo systemctl restart apache2

Joomla 설치 완료

Joomla가 다운로드되고 서버 구성이 완료되었으므로 웹 인터페이스를 사용하여 Joomla 설치를 마무리해야합니다.

브라우저를 열고 도메인을 입력하면 다음과 유사한 화면이 나타납니다.

“다음”버튼을 클릭하면 개요 페이지로 리디렉션됩니다:

여기에서 샘플 데이터를 설치하고 모든 검사가 통과되었는지 확인할 수 있습니다. Install 버튼을 클릭하면 설치가 완료되면 Joomla가 설치되었음을 알리는 페이지가 나타납니다.

보안상의 이유로 설치 디렉토리를 삭제해야합니다. 그렇게하려면 터미널로 돌아가서 다음 rm 명령을 실행하십시오.

sudo rm -rf /var/www/example.com/installation

Joomla 백엔드에 액세스하려면 Adminstrator 버튼을 클릭하십시오. 여기에서 새로운 테마 및 플러그인을 설치하여 Joomla 설치 사용자 정의를 시작할 수 있습니다.

결론

축하합니다. Ubuntu 18.04 서버에 Apache와 함께 Joomla를 성공적으로 설치했습니다. Joomla Documentation은 새로운 Joomla 사이트를 시작하는 방법에 대한 자세한 정보를 제공하는 좋은 출발점입니다.

우분투 joomla mysql mariadb cms 아파치