PHP 웹사이트 게시 방법(CodeCanyon 스크립트 설치)

게시 됨: 2020-11-26

Codecanyon에서 PHP 스크립트를 구입하여 설치하려는 경우 또는 PHP 개발자이고 PHP 웹사이트를 온라인에 게시하는 방법을 배우고 싶다면 바로 찾아오셨습니다.️

이 가이드에서는 다음을 다룹니다.

  • 요구 사항 .
  • 도메인 이름을 가져옵니다.
  • VPS 서버를 얻으십시오.
  • 서버 IP를 도메인에 매핑합니다.
  • 애플리케이션을 위한 MySQL 데이터베이스를 생성합니다.
  • WinSCP를 사용하여 서버에 파일 업로드.
  • PHP 모듈 설치.
  • MySQL 데이터베이스 관리.
  • 크론잡을 설정합니다.

PHP 웹사이트를 게시하기 위한 요구 사항.

필요한 것은 다음과 같습니다.

  • PHP 스크립트를 설치할 VPS 서버 .
  • 설정에 사용할 도메인 이름 입니다.

1. PHP 웹사이트를 게시하기 위해 도메인 이름을 얻으십시오.

도메인을 얻는 것은 초콜릿 케이크 한 조각을 먹는 것만큼 간단합니다. Godaddy, Hostinger , Enom, Freenom, Namecheap … 도메인 이름을 구입하면 연간 1$에 도메인 이름을 얻을 수도 있습니다.

귀하의 비즈니스를 반영하는 도메인 이름을 사용하는 것이 좋습니다. 이미 가지고 있는 경우 제 생각에는 이 단계를 건너뛰고 계속해서 VPS 서버를 얻을 수 있습니다.

이 3분 비디오를 보고 Godaddy에서 도메인 이름을 얻고 구매하는 방법을 확인하세요.

2. VPS 서버를 가져옵니다.

이제 VPS 서버에서 PHP 스크립트 를 설정하도록 합시다.

VPS 서버란 무엇입니까?

PHP 웹사이트, 스크립트 또는 웹 응용 프로그램을 게시하려는 경우 " 웹 호스팅 "이라고 하는 작업을 수행합니다. 이는 단순히 파일과 데이터베이스를 공개 서버에 업로드하여 인터넷을 통해 온라인에 액세스할 수 있도록 하는 것을 의미합니다.

PHP 웹사이트를 게시하는 방법

호스팅 옵션.

이제 웹 응용 프로그램(이 시나리오의 WordPress)을 호스팅하려는 경우 주로 2가지 옵션이 있습니다.



공유 호스팅:

이는 Godaddy, Bluehost, Hostinger와 같은 호스팅 서비스에 웹사이트를 게시하는 것을 의미합니다. 여기에서 귀하의 웹사이트는 동일한 서버에 있는 수백 개의 다른 웹사이트와 함께 호스팅됩니다 .

VPS 호스팅

이 설정에서는 자신의 서버에서 웹사이트를 호스팅하므로 당신만을 위한 서버가 생깁니다! VPS 또는 가상 사설 서버 라고 합니다.

어느 것이 더 낫습니까?

지금 깊이 들어가 기술적인 내용을 설명하고 싶지는 않지만, 몇 가지 작업에서 VPS는 완전한 관리 용이성과 더 나은 성능을 갖춘 자체 서버가 있는 곳에서 확실히 더 좋습니다.

그리고 파쇄 호스팅이 훨씬 저렴하다고 생각한다면 잘못된 것입니다. Contabo VPS 서비스와 마찬가지로 한 달에 3.99유로로 시작할 수 있으며 이는 공유 호스팅 서비스의 거의 90%에 대해 동일한 가격입니다.

여기의 유일한 단점은 설정 및 구성에 좀 더 기술적인 기술이 필요하다는 것입니다. 하지만 다행히도 여기 단계별 가이드가 있어 일이 정말 쉽게 진행되는 방법을 볼 수 있습니다!

어떤 회사를 이용해야 하나요?

VPS 서버를 구입하려는 모든 회사를 사용할 수 있습니다. 이 가이드에서는 필요한 모든 것을 갖춘 가장 저렴한 가격의 두 회사를 알려 드리겠습니다. 저는 제 비즈니스를 위해 10대 이상의 서버를 운영하는 데 사용합니다.

이러한 회사는 Contabo 및 Digital Ocean입니다.

그러나 내가 말했듯이, 그것은 당신에게 달려 있습니다. 당신은 당신이 편안하다고 느끼는 회사를 사용할 수 있습니다. 당신은 또한 다른 회사와 비교하여 매우 좋은 가격을 제공하는 Hostinger와 함께 갈 수 있습니다.

참고: 이 자습서에서는 Contabo를 사용합니다.

이제 Contabo에서 VPS 서버를 얻는 방법을 살펴보겠습니다.



Contabo에서 VPS 서버를 가져옵니다.

1: Contabo 웹사이트를 엽니다.

웹 브라우저를 열고 Contabo VPS 페이지로 이동합니다.

콘타보 VPS

시작할 여러 VPS 구성이 표시됩니다. WordPress를 설치하는 가장 저렴한 옵션으로 시작하면 충분합니다.

나중에 비즈니스를 성장시키면 더 높은 리소스로 더 강력한 VPS를 확장하고 얻을 수 있습니다.

2: VPS 옵션 설정

다음 페이지에서 몇 가지 옵션을 선택해야 합니다.

운영 체제 옵션에서 Ubuntu 18.04를 선택합니다.

Contabo VPS Ubuntu에 WordPress 설치
우분투 18.04 선택

그런 다음 관리 패널에서 LAMP를 선택합니다.

Contabo VPS LAMP에 WordPress 설치
램프 선택

그리고 마지막 옵션인 Addons에서 "Individual reverse DNS"를 확인합니다.

Contabo VPS에 WordPress 설치
PTR 추가

PTR 레코드를 입력하도록 승격된 경우 도메인 이름을 입력하면 됩니다.

이제 결제 페이지로 이동하여 주문을 확인하세요. 다른 단계는 간단하고 자명하다고 생각합니다.

24시간 안에 Contabo 팀이 서버를 설정하고 다음과 같이 세부 정보를 이메일로 보냅니다.



Contabo VPS에 WordPress 설치
로그인 정보

디지털 오션을 위해.

Digital Ocean을 사용하려면 아래의 쿠폰 링크를 통해 가입하기만 하면 모든 것을 무료로 테스트할 수 있는 100$를 무료로 받을 수 있습니다.

디지털오션쿠폰

그리고 Digital Ocean에 가입한 후 다음 사양으로 Droplet을 생성하면 됩니다.

  • Ubuntu 16/18/20 x64를 운영 체제로 사용합니다.
  • 1 CPU/1GB RAM으로 시작할 수 있습니다(나중에 크기를 조정할 수 있음).

엄청난! 당신은 당신의 서버를 얻었다. ️

또한 확인하십시오:

Contabo VPS에 WordPress를 설치하는 방법(cPanel 제외)

3. 도메인 이름을 VPS 서버에 매핑합니다.

좋아 친구, 이제 도메인과 VPS 서버가 있습니다. 그러나 그들은 연결되어 있지 않습니다!

이제 Contabo 팀에서 이메일로 보낸 IP 주소를 통해 VPS 서버에 액세스할 수 있습니다. 물론 IP를 통해 WordPress 웹 사이트에 액세스하고 싶지 않습니다! 우리는 우리의 도메인 이름을 사용하고 싶습니다.

따라서 간단히 도메인 이름을 VPS IP에 매핑한 다음 도메인과 IP를 통해 VPS와 WordPress 웹사이트에 액세스합니다.

DNS 레코드 구성:

도메인 공급자 (내 경우에는 Godaddy)에서 DNS 관리 영역을 열고 다음과 같이 기본 A 레코드 를 편집하기만 하면 됩니다.



호스트: @ 포인트: 귀하의 서버 IP .

도메인을 vps에 매핑

완료? 엄청난! ️

4. 애플리케이션을 위한 MySQL 데이터베이스를 생성합니다.

PHP 웹사이트를 게시하려면 대부분의 PHP 스크립트 및 애플리케이션에 MySQL 데이터베이스가 필요합니다. 이제 하나를 만들어 보겠습니다.

퍼티와 같은 SSH 클라이언트를 사용하여 VPS 서버에 연결합니다. 그리고 시작합시다!

퍼티

Putty를 열고 서버 IP 또는 이름을 입력하고 열기를 누르기만 하면 됩니다.

로그인하라는 메시지가 표시되면 사용자로 "루트"를 입력한 다음 이메일로 전송된 비밀번호를 입력하면 됩니다.

참고: 비밀번호를 입력하는 동안 보안상의 이유로 putty가 비밀번호를 표시하지만 거기에 비밀번호를 입력하면 됩니다!

콘타보에 워드프레스 설치
퍼티로 로그인

그리고 당신이 있습니다!

좋은 점은 MySQL이 LAMP 스택의 일부로 이미 설치되어 있지만 애플리케이션을 위한 데이터베이스와 사용자를 생성해야 한다는 것입니다.



시작하려면 다음 명령을 실행하여 MySQL 루트(관리) 계정에 로그인합니다.

 mysql -u 루트 -p

루트 암호를 입력하라는 메시지가 표시되면 암호를 쓰거나 붙여넣고 Enter 키를 누르십시오.

먼저 PHP 응용 프로그램에서 사용할 별도의 데이터베이스를 만듭니다. 이것을 원하는 대로 호출할 수 있지만 이 가이드에서는 간단하게 유지하기 위해 TestDb 를 사용할 것입니다. 다음 명령을 실행하여 데이터베이스를 생성합니다.

 CREATE DATABASE TestDb DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ;

참고: 모든 MySQL 문은 세미콜론(;)으로 끝나야 합니다.

다음으로, 새 데이터베이스에서 작업하는 데 독점적으로 사용할 별도의 MySQL 사용자 계정을 만들 것입니다. 단일 기능 데이터베이스 및 계정을 만드는 것은 관리 및 보안 관점에서 좋은 생각입니다. 이 가이드에서는 DbUser 라는 이름을 사용합니다. 원하는 경우 자유롭게 변경하십시오.

이 계정을 만들고 암호를 설정하고 우리가 만든 데이터베이스에 대한 액세스 권한을 부여할 것입니다. 다음 명령을 입력하여 이를 수행할 수 있습니다. 여기에서 데이터베이스 사용자에 대해 강력한 암호를 선택하는 것을 잊지 마십시오.

 CREATE USER 'DbUser'@'localhost' IDENTIFIED BY 'enter_a_custom_password_here';
 GRANT ALL ON TestDb.* TO 'DbUser'@'localhost';

이제 PHP 애플리케이션을 위해 특별히 만들어진 데이터베이스와 사용자 계정이 생겼습니다. MySQL의 현재 인스턴스가 최근 변경 사항을 알 수 있도록 권한을 플러시해야 합니다.

 FLUSH PRIVILEGES;

다음을 입력하여 MySQL을 종료합니다.

 EXIT;

완료! ️



5. 스크립트 파일을 서버에 업로드합니다.

파일을 업로드하려면 WinSCP라는 응용 프로그램이 필요합니다.

무료 도구이며 여기에서 다운로드할 수 있습니다.

WinSCP를 사용하여 VPS 서버에 연결하고 PHP 파일을 "/var/www/html" 경로로 서버에 업데이트합니다.

대부분의 경우 파일이 압축되므로 압축을 풀어야 합니다.

다시 Putty SSH 클라이언트로 이동하고 다음 명령을 사용하여 압축 해제 유틸리티를 설치해 보겠습니다.

 sudo apt-get 설치 압축 풀기

다음 명령을 사용하여 깨끗한 퍼티 화면을 지우십시오.

 분명한

다음 명령을 사용하여 디렉토리를 /var/www/html로 변경하십시오.

 CD /var/www/html

다음 명령을 사용하여 ".zip" 파일의 압축을 풉니다.

 yourFILENAME*.zip의 압축을 풉니다.

*참고: 파일 이름은 경우에 따라 다를 수 있으므로 YOURFILENAME 을 파일 이름으로 바꾸십시오.

이제 최신 폴더 내용을 상위 디렉터리로 이동하여 직접 액세스할 수 있도록 합니다. -> WinSCP를 사용합니다.
"YOURFILENAME" 폴더에 있는 모든 파일을 복사하여 html 폴더에 직접 붙여넣기만 하면 됩니다.



파일이 업로드되었습니다. 완료! ️

6. PHP 웹사이트 게시를 위한 PHP 모듈 설치(선택 사항)

일부 PHP 응용 프로그램에는 서버에 추가 PHP 모듈이 필요합니다(이는 앱 설명서에 언급됨)

추가 PHP 모듈을 설치하려면:

Putty를 열고 다음 명령을 실행하여 PHP 모듈을 설치합니다.

 sudo apt 설치 php-curl
sudo apt 설치 php-mbstring
sudo apt install php 예제
......

*다음 명령을 사용하여 Apache 서비스를 다시 시작합니다.

sudo 서비스 apache2 재시작

완료! ️

7. PHP 웹 사이트를 게시하도록 Apache 구성

이제 파일이 업로드되어 html 폴더에 저장됩니다. PHP 웹사이트를 게시하고 도메인 이름을 사용하여 스크립트에 액세스할 수 있도록 Apache를 구성하기만 하면 됩니다. 이렇게 하려면 WinSCP를 다시 열고 다음 디렉토리로 이동합니다. /etc/apache2/sites-available/

이제 비어 있는 새 파일을 만들고 이름을 " yourdomain.conf "로 지정합니다. "Scriptname"을 원하는 이름으로 바꿀 수 있습니다(아래는 이름을 mautic.conf로 지정하는 예입니다).

스크립트 회의
회의 만들기

yourdomain.conf 를 연 다음 아래 내용을 복사하여 파일에 붙여넣고 저장합니다.



 <가상 호스트 *:80>
     ServerAdmin 관리자@YOUDOMAINNAME
     문서 루트 /var/www/html
     서버 이름 YOUDOMAINNAME
     ServerAlias ​​YOUDOMAINNAME

     <디렉토리 /var/www/html/>
        옵션 +FollowSymlinks
        모두 재정의 허용
        모든 권한 부여 필요
     </디렉토리>

     오류 로그 ${APACHE_LOG_DIR}/error.log
     CustomLog ${APACHE_LOG_DIR}/access.log 결합

</가상 호스트>

내 경우에는 "YOURDOMAINNAME" 도메인으로 교체합니다.

아파치에서 스크립트 구성을 활성화하고 서비스를 다시 시작하십시오.

이제 간단히 다음 명령을 실행하여 설정을 완료하십시오.

 sudo a2ensite yourdomain.conf

sudo a2enmod 다시 쓰기

sudo systemctl apache2.service 재시작 

엄청난! 거의 다 됐어요

8. MySQL 데이터베이스에 연결합니다.

지금 웹 브라우저를 열고 서버 이름으로 이동하십시오.

아래의 설정 완료 마법사가 표시되어야 합니다.

데이터베이스 정보와 관리자 로그인 정보를 입력하여 설정을 계속하십시오. 이 예에서 데이터베이스 이름은 TestDb이고 사용자는 암호가 설정된 DBUser입니다.

간단해! 유사한 스크립트에서 아래 예제를 확인하십시오.

데이터베이스에 연결합니다. 완료! ️

9. cronjob을 설정합니다.

크론잡이란?

cron 은 지정된 시간과 날짜에 자동으로 실행되도록 서버의 명령이나 스크립트를 예약하는 Linux 유틸리티입니다. cron 작업 은 예약된 작업 자체입니다. Cron 작업은 반복적인 작업을 자동화하는 데 매우 유용할 수 있습니다.



예를 들어, 디스크 공간을 절약하기 위해 매주 임시 파일을 삭제하도록 cron 작업을 설정할 수 있습니다. 일부 PHP 웹 응용 프로그램에서는 특정 기능을 수행하기 위해 cron 작업을 설정해야 할 수 있습니다.

크론잡을 설정합니다.

cronjob을 설정하려면 필요한 모든 작업을 서버에 추가해야 합니다. 이것은 스크립트에 따라 다르므로 코드 캐년에서 스크립트를 구입한 경우 스크립트 소유자가 cronjob을 제공해야 합니다.

이렇게 하려면 WinSCP를 열고 /etc
편집기를 사용하여 crontab 파일 열기
스크립트의 모든 작업을 이 폴더에 붙여넣습니다. (cronjob은 앱 설명서에 나열되어 있습니다)

각 작업이 한 줄에 있고 끝에는 빈 줄이 있는지 확인하십시오.

크론잡. 완료! ️

10. 무료 SSL로 보호합니다.

SSL 인증서는 웹 서버 내에서 서버와 클라이언트 간의 트래픽을 암호화하는 데 사용되어 애플리케이션에 액세스하는 사용자에게 추가 보안을 제공합니다. Let's Encrypt 는 신뢰할 수 있는 인증서를 무료 로 얻고 설치할 수 있는 쉬운 방법을 제공합니다.

Putty SSH 클라이언트를 사용하여 서버에 연결합니다. 그리고 시작합시다!

1단계 — Let's Encrypt 클라이언트 설치

Let's Encrypt 인증서는 서버에서 실행되는 클라이언트 소프트웨어를 통해 가져옵니다. 공식 클라이언트는 Certbot 입니다.

먼저 Certbot을 설치할 저장소를 추가합니다.



 sudo add-apt-repository ppa:certbot/certbot

수락하려면 ENTER 를 눌러야 합니다.

그런 다음 패키지 목록을 업데이트하여 새 리포지토리의 패키지 정보를 선택합니다.

 sudo apt-get 업데이트

Certbot의 Apache 패키지를 설치합니다.

 sudo apt install python-certbot-apache

이제 Certbot 을 사용할 준비가 되었습니다.

2단계 - SSL 인증서 설정

Certbot을 사용하여 Apache용 SSL 인증서를 생성하는 것은 매우 간단합니다. 클라이언트는 매개변수로 제공된 도메인에 유효한 새 SSL 인증서를 자동으로 가져와 설치합니다.

다음 명령을 실행하기만 하면 됩니다. (도메인 변경)

 sudo certbot --apache -d YOUR_DOMAIN_NAME

분실된 키 복구 및 알림을 위한 이메일 주소를 제공하라는 메시지가 표시되며 httphttps 액세스를 모두 활성화하거나 모든 요청을 https 로 리디렉션하도록 선택할 수 있습니다. 암호화되지 않은 http 트래픽이 특별히 필요한 경우가 아니면 일반적으로 https 를 요구하는 것이 가장 안전합니다.

그게 다야!

지금 웹사이트를 테스트하고 SSL로 암호화해야 합니다.

완료! ️