웹사이트 검색

Ubuntu 18.04 LTS에서 Nginx로 OSClass를 설치하는 방법


이 튜토리얼은 다음 OS 버전에 대해 존재합니다.

  • Ubuntu 20.04(Focal Fossa)
  • Ubuntu 18.04(Bionic Beaver)

이 페이지에서

  1. 요구 사항\n
  2. 시작하기\n
  3. LEMP 서버 설치
  4. OSClass용 데이터베이스 구성
  5. OSClass 설치
  6. OSClass용 Nginx 구성
  7. OSClass 웹 인터페이스 액세스

OSClass는 자신만의 구인 광고 사이트를 만드는 데 사용할 수 있는 무료 오픈 소스 PHP 스크립트입니다. 구인 목록, 판매 목록, 부동산 및 기타 유사한 목록 웹 사이트를 만들기 위해 수천 명의 사용자가 사용합니다. OSClass는 내장 플러그인, 테마, 다국어, CAPTCHA, 대시보드, SEO 친화적 등과 같은 많은 기능을 제공합니다.

이 튜토리얼에서는 Ubuntu 18.04 서버에 OSClass를 설치하는 방법을 배웁니다.

요구 사항

  • Ubuntu 18.04를 실행하는 서버.\n
  • 루트 비밀번호가 서버에 설정됩니다.\n

시작하기

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

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

서버가 업데이트되면 서버를 다시 시작하여 변경 사항을 적용하십시오.

LEMP 서버 설치

시작하기 전에 Nginx, MariaDB, PHP 및 기타 필수 패키지를 서버에 설치해야 합니다. 다음 명령으로 모두 설치할 수 있습니다.

apt-get install nginx mariadb-server php7.2 php7.2-cli php7.2-fpm php7.2-common php7.2-mysql php7.2-gd php7.2-xml unzip -y

모든 패키지가 설치되면 Nginx 및 MariaDB 서비스를 시작하고 다음 명령을 사용하여 부팅 시 시작할 수 있도록 합니다.

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

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

OSClass용 데이터베이스 구성

기본적으로 MariaDB는 보안되지 않습니다. 따라서 보안을 유지해야 합니다. mysql_secure_installation 스크립트를 실행하여 이를 수행할 수 있습니다.

mysql_secure_installation

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

    Enter current password for root (enter for none):
    Set root password? [Y/n]: N
    Remove anonymous users? [Y/n]: Y
    Disallow root login remotely? [Y/n]: Y
    Remove test database and access to it? [Y/n]:  Y
    Reload privilege tables now? [Y/n]:  Y

MariaDB가 보호되면 다음 명령을 사용하여 MariaDB 셸에 로그인합니다.

mysql -u root -p

프롬프트가 표시되면 루트 비밀번호를 입력하십시오. 그런 다음 다음 명령을 사용하여 OSClass에 대한 데이터베이스 및 사용자를 생성합니다.

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

다음으로 권한을 플러시하고 다음 명령을 사용하여 MariaDB 셸을 종료합니다.

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

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

OSClass 설치

먼저 웹사이트에서 최신 버전의 OSClass를 다운로드해야 합니다. 다음 명령으로 다운로드할 수 있습니다.

wget https://static.osclass.org/download/osclass.3.8.0.zip

다운로드가 완료되면 다음 명령을 사용하여 다운로드한 파일을 Nginx 루트 디렉터리에 추출합니다.

unzip osclass.3.8.0.zip -d /var/www/html/osclass

다음으로 디렉터리를 osclass로 변경하고 다음 명령을 사용하여 샘플 구성 파일을 복사합니다.

cd /var/www/html/osclass
cp config-sample.php config.php

다음으로 config.php 파일을 열고 데이터베이스 설정을 정의합니다.

nano config.php

다음과 같이 변경합니다.

 * The base MySQL settings of Osclass
 */
define('MULTISITE', 0);

/** MySQL database name for Osclass */
define('DB_NAME', 'osclassdb');

/** MySQL database username */
define('DB_USER', 'osclass');

/** MySQL database password */
define('DB_PASSWORD', 'password');

/** MySQL hostname */
define('DB_HOST', 'localhost');

/** Database Table prefix */
define('DB_TABLE_PREFIX', 'oc_');

define('REL_WEB_URL', 'rel_here');

define('WEB_PATH', 'http://localhost');

파일을 저장하고 닫습니다. 그런 다음 다음 명령을 사용하여 osclass 디렉토리에 적절한 권한을 부여하십시오.

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

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

OSClass용 Nginx 구성

다음으로 OSClass용 Nginx 가상 호스트 파일을 만들어야 합니다. 다음 명령으로 만들 수 있습니다.

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

다음 줄을 추가합니다.

server {
    listen 80;
    listen [::]:80;

    server_name example.com;
    root /var/www/html/osclass;

    index index.php index.html;

    location / {
      try_files $uri $uri/ /index.php?$args;
    }

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/var/run/php/php7.2-fpm.sock; # Check this
    }
}

완료되면 파일을 저장하고 닫습니다. 그런 다음 다음 명령을 사용하여 Nginx 가상 호스트 파일을 활성화합니다.

ln -s /etc/nginx/sites-available/osclass.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 서비스를 다시 시작하여 다음 명령으로 모든 변경 사항을 적용합니다.

systemctl restart nginx

다음 명령을 사용하여 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 Thu 2019-03-28 15:19:49 UTC; 22min ago
     Docs: man:nginx(8)
 Main PID: 15044 (nginx)
    Tasks: 2 (limit: 1113)
   CGroup: /system.slice/nginx.service
           ??15044 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
           ??15050 nginx: worker process

Mar 28 15:19:49 ubuntu1804 systemd[1]: Starting A high performance web server and a reverse proxy server...
Mar 28 15:19:49 ubuntu1804 systemd[1]: nginx.service: Failed to parse PID from file /run/nginx.pid: Invalid argument
Mar 28 15:19:49 ubuntu1804 systemd[1]: Started A high performance web server and a reverse proxy server.

Nginx가 구성되면 다음 단계로 진행할 수 있습니다.

OSClass 웹 인터페이스에 액세스

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

이제 설치 버튼을 클릭하십시오. 다음 페이지가 표시됩니다.

필요한 종속 항목이 모두 설치되었는지 확인한 다음 설치 실행 버튼을 클릭합니다. 다음 페이지가 표시됩니다.

이제 데이터베이스 이름, 사용자 이름 및 비밀번호와 같은 데이터베이스 세부 정보를 제공하십시오. 그런 다음 다음 버튼을 클릭합니다. 다음 페이지가 표시됩니다.

이제 관리자 사용자 이름과 암호, 웹 제목 및 이메일 주소를 제공하십시오. 그런 다음 다음 버튼을 클릭합니다. 다음 페이지가 표시됩니다.

이제 완료를 클릭하고 관리 패널 버튼으로 이동하십시오. 다음 페이지가 표시됩니다.

이제 관리자 사용자 이름과 비밀번호를 제공하십시오. 그런 다음 로그인 버튼을 클릭합니다. 다음 페이지에 OSClass 기본 대시보드가 표시되어야 합니다.

OSClass가 성공적으로 설치되었습니다.