자신의 웹 사이트를 호스팅하는 방법

자신의 웹 사이트를 호스팅하는 것은 보람있는 것처럼 재미있는 경험입니다. 오래된 Windows 또는 Linux 시스템을 사용하면 HTML 파일 몇 개를 폴더에 던져 인터넷에 직접 넣을 수 있습니다.


하지만 사이트를 호스팅 할 때 무엇을하고 있는지 정확히 아는 것이 중요합니다. 귀하의 컴퓨터는 인터넷을 통해 데이터를 저장하고 전송하기 위해 구축 된 서버 인 서버의 역할을하여 전 세계 누구에게나 사이트를 표시 할 수 있습니다..

기본적으로 이것이 모든 웹 호스팅입니다. 본 기기는 데이터를 저장하고 네트워크에 업로드하기위한 도구 일뿐입니다. 그러나이 프로세스가 원활하게 실행되도록하는 다른 소프트웨어가 있습니다..

다이빙을하기 전에 메모를하고 싶습니다. 우리는 교육 목적으로 만이 안내서를 작성합니다. 자체 웹 사이트를 호스팅하면 성능 및 일관성 문제가 너무 많이 발생하므로 권장하지 않습니다. 웹 사이트 구축에 대해 진지한 경우 사용 편의성, 가격 및 속도를 높이기 위해 즐겨 찾는 두 가지 제공 업체 인 Hostgator 또는 SiteGround를 사용해보십시오.

집에서 웹 사이트를 호스팅하는 방법

우리는 가정용 컴퓨터와 일반적인 데스크탑 환경을 사용하여 Windows 및 Linux에서 자신의 웹 사이트를 호스팅하는 방법을 다룰 것입니다. 튜토리얼은 테스트 사이트를 만들지 만 디자인은 사용자의 몫입니다.

튜토리얼에서는 AMP 스택을 사용하고 있습니다. 튜토리얼 전반에 걸쳐 각 기술을 살펴보면서이 용어에 익숙하지 않아도 걱정하지 마십시오..

Windows에서 호스팅

먼지를 모으는 여분의 Windows 시스템이있는 경우 웹 서버로 전환 할 수 있습니다. 이 프로세스는 AMP 스택을 통해 매우 간단합니다. 이 번들에는 일반적으로 Windows에서 WAMP라고하는 Apache, MySQL 및 PHP가 포함됩니다. 왜 그런지 알아낼 수 있다고 확신합니다.

여러 설치 프로그램이 있지만 가장 간단한 WampServer를 사용합니다. 사이트로 이동하여 OS에 따라 32 비트 또는 64 비트 실행 파일을 다운로드하십시오..

설치 중에 컴퓨터에 Skype가 실행중인 경우 포트 80 충돌이 발생합니다. WampServer와 Skype는 모두 포트 80을 사용하므로 WampServer를 실행하기 전에 Skype에서 연결을 끊기 만하면됩니다..  

보통“c : \ wamp \ www”에있는 www 디렉토리를 자동으로 생성합니다. 이곳은 귀하의 웹 사이트 (들)가 살 곳입니다. 디렉토리에 새 폴더를 만들고 PHP 또는 HTML 파일을 내부에 보관하십시오..

그러나이를 수행하기 전에 WampServer가 올바르게 작동하는지 테스트해야합니다. 메뉴의 링크를 클릭하거나 웹 브라우저를 열고 “http : // localhost”로 이동하여 WampServer의 기본 화면에 액세스 할 수 있습니다..

WampServer 테스트

축하합니다. Windows 컴퓨터는 이제 서버이지만 지금은 실제로 많은 일을하고 있지 않습니다. 파일을 추가하고 인터넷에 게시하기 전에 모든 것이 제대로 흐르고 있는지 테스트해야합니다..

간단한 테스트 PHP 파일을 만들어 디렉토리에 넣습니다. Windows에서 메모장을 열고 다음 줄을 입력하십시오.

PHP 테스트

WampServer가 생성 한 www 디렉토리에 해당 파일을“info.php”로 저장하십시오. 웹 브라우저를 열고“http : //localhost/info.php”로 이동하십시오. 탭 이름에 “PHP Test”가있는 빈 페이지가 표시되면 모든 것이 제대로 작동하는 것입니다.

MySQL 데이터베이스 구성

WordPress와 같은 CMS를 사용하지 않는 경우 (필요한 경우 WordPress에 가장 적합한 웹 호스팅에 대한 가이드를 읽으십시오) MySQL 데이터베이스를 구성해야합니다. 이는 SQL (Structured Query Language)을 사용하는 오픈 소스 관계형 데이터베이스 관리 시스템 (RDBMS)입니다..

약자 중심의 정의를 위해 MySQL은 사이트의 데이터를 신속하게 찾아서 전송할 수있는 데이터베이스로 구성합니다. CMS (콘텐츠 관리 시스템)는 MySQL을 사용하여 사용자에게 가능한 한 효율적으로 정보를 전송합니다..

WampServer 기본 화면의 “도구”섹션에서 “phpMyAdmin”을 클릭하여 기존 데이터베이스를 변경하거나 새 데이터베이스를 작성할 수 있습니다. 사용자 이름과 비밀번호를 요청하는 새 탭이 열립니다. 사용자 이름은 기본적으로 “루트”이며 비밀번호 필드를 비워 둘 수 있습니다.

CMS를 사용하려는 경우이 영역으로 뛰어들 필요가 없습니다. 예를 들어 WordPress는 설치시 MySQL 데이터베이스를 생성합니다. 어느 쪽이든, 내가하고있는 일을 알지 못한다면 여기를 찌르는 것은 좋지 않습니다..

MySQL이 제대로 작동하도록하려면 새 탭을 열고“http : //localhost/testmysql.php”로 이동하십시오. 그것은 당신에게 당신의 기계의 IP 주소를 표시하고 연결이 괜찮은지 알려줍니다.

사이트를 라이브로 만드십시오

Apache 구성 파일은 기본적으로 들어오는 연결을 거부하도록 설정되어 있습니다. 즉, 로컬 컴퓨터는 사이트에 액세스 할 수있는 유일한 컴퓨터입니다. 테스트 사이트를 실행하는 데는 좋지만 실제로 사용할 준비가되면 구성을 변경해야합니다..

WampServer 메뉴로 이동하여 “Apache”를 클릭 한 다음 “httpd-vhosts.conf”를 클릭하십시오..

이 파일은 Apache 구성 파일이며 다음 줄이 있어야합니다.

# 가상 호스트

#

 ServerName 로컬 호스트

 ServerAlias ​​로컬 호스트

 DocumentRoot“$ {INSTALL_DIR} / www”

 

   옵션 + 인덱스 + 포함 + FollowSymLinks + MultiViews

   AllowOverride All

   현지 필요

 

들어오는 연결을 허용하려면“지역 요구 사항”을“모든 권한 부여 필요”로 변경하면됩니다..

메뉴에서 “Restart All Services (모든 서비스 다시 시작)”를 선택하여 WampServer를 다시 시작하면 변경 사항이 적용됩니다. PC 방화벽이 웹 요청을 차단하지 않는지 다시 확인해야하지만 그 후에 설정해야합니다..

도메인 이름 추가

그러나 아무도 웹 사이트에 액세스하기 위해 폴더 계층 구조를 기억하지 않습니다. 웹 브라우저에 쉽게 입력하려면 로컬 컴퓨터를 가리키는 도메인 이름이 필요합니다. 서버는 DNS 레코드를 사용합니다..

DNS 레코드에 대한 기사를 읽고 구체적인 내용을 배울 수 있지만 기본적으로 로컬 IP 주소를 도메인 이름에 연결하는 시스템입니다. 예를 들어, 서버 IP가 199.999.999 인 경우 도메인을 입력하면 DNS 레코드가 해당 서버에 액세스하는 것을 알게됩니다.

DNS 레코드에 도메인에 대한 A 레코드가 있으면 로컬 호스트 파일을 업데이트해야합니다. “C : \ Windows \ system32 \ drivers \ etc \ hosts 파일”로 이동하여 아래에 다음 줄을 추가하십시오.

199.999.999.99 (IP 주소) example.com (도메인 이름)

명확하게하기 위해 위에 괄호 안에있는 내용은 포함하지 마십시오. 다음으로“C : \ wamp \ bin \ apache \ Apache-VERSION \ conf \ extra \”에 파일을 수동으로 추가해야합니다. 여기서 VERSION은 Apache 버전입니다. 다음 줄을 사용하여 메모장에서 파일을 작성하십시오.

ServerAdmin [이메일 보호]
DocumentRoot“c : \ wamp \ www”
ServerName mysite.local

ErrorLog“logs / example.com.log”
CustomLog“logs / example.com-access.log”공통

물론 “example.com”을 도메인 이름으로 바꾸십시오. 완료되면 파일을 Apache 디렉토리에 저장하면 도메인 이름을 통해 웹 사이트에 액세스 할 수 있습니다.

Windows 호스팅 팁

일반적인 컴퓨터는 설치 및 실행을 지원하지만 Windows가 리소스를 많이 사용하는 운영 체제 중 하나라는 점을 고려할 때 가장 이상적인 설정은 아닙니다. 많은 힘을 발휘하지 않는 한 웹 호스팅을 위해 운영 체제를 최적화해야합니다..

첫 번째 단계는 필요하지 않은 모든 응용 프로그램을 제거하는 것입니다. WampServer 제어판에 액세스하려면 웹 브라우저를 유지하는 것이 중요하지만 거의 모든 것이 도끼를 얻을 수 있습니다.

다음은 백그라운드에서 실행중인 시작 응용 프로그램을 비활성화하는 것입니다. Windows가 작동하는 데 필요한 몇 가지가 있으므로 비활성화 할 최선의 판단을 사용하십시오. 작업 관리자에서 목록을 찾을 수 있습니다.

웹 호스팅을 위해 Windows 컴퓨터를 사용하는 것이 중요하다면 Windows Server에도 투자하는 것이 좋습니다. 이 OS는 훨씬 더 가벼우 며 웹 호스팅이든 스토리지이든 관계없이 모든 서버에서 실행하기에 적합합니다..

Linux에서 호스팅

처음부터 머신을 만들 계획이라면, 아마도 리눅스가 더 나은 선택 일 것입니다. 이 경량 키트는 운영 체제의 카멜레온으로 거의 모든 요구에 맞게 조정할 수 있습니다..

프로세스는 WAMP 번들 대신 LAMP 번들이 필요하다는 점을 제외하고 Windows와 유사합니다. 그 차이를 알아낼 수있을 것입니다. 스택을 검색하려면 터미널을 열고 다음 줄을 입력하십시오.

sudo apt 설치 apache2 mysql-server PHP libapache2-mod-php7.0

설치하는 동안 “루트”사용자의 비밀번호를 설정하라는 메시지가 표시됩니다. 원하는대로 설정하거나 비워 둘 수 있습니다. 설치가 완료되면 Apache 웹 서버를 다시 시작해야합니다.

로컬 .htaccess 파일을 사용하지 않으면 Apache의 전역 구성을 변경할 때마다이 작업을 수행해야합니다. 다시 시작하려면 다음 명령을 입력하십시오.

sudo /etc/init.d/apache2 재시작

PHP 확인

Windows와 마찬가지로 계속 진행하기 전에 PHP 서버가 작동하는지 확인해야합니다. Linux에서는 “/ var / www / html /”에있는 www 폴더에 테스트 파일을 배치하여 이전과 동일한 프로세스를 사용합니다. 다음 행으로 파일을 작성하여 디렉토리에 놓으십시오.

sudo echo“” > /var/www/html/info.php

“http : //localhost/info.php”로 가서 페이지가로드되는지 확인하십시오. 여기에서도 PHP 버전, 현재 구성 및 설치된 모듈을 볼 수 있어야합니다.

MySQL 구성

PHP가 작동하는지 확인한 후 MySQL 데이터베이스를 확인해야합니다. WordPress와 같은 CMS를 사용하려는 경우이 단계를 건너 뛰지 않아야합니다..

터미널을 열고 다음 줄을 입력하십시오.

서비스 MySQL 상태

잠시 후에 다음과 같은 결과가 나타납니다.

$ 서비스 MySQL 상태

  • mysql.service – MySQL 커뮤니티 서버

[…]

mrt 15 16:02:14 host1 systemd [1] : MySQL 커뮤니티 서버 시작.

서버가 작동하지 않으면“sudo service mysql restart”를 입력하여 MySQL 서버를 다시 시작하십시오. 작업이 완료되면 MySQL 명령 행 클라이언트를 사용하여 데이터베이스를 관리 할 수 ​​있습니다. 이렇게하려면 MySQL을 설치할 때 입력 한 자격 증명을 기억하고 다음을 입력하십시오.

$ mysql -u 루트 -p

일반적으로 CMS는 데이터베이스를 설치하므로 여기에서 번거로울 필요가 없습니다. 그러나 데이터베이스 백업 작성과 같이 수동으로 수행 할 수있는 작업이 몇 가지 있습니다. 보다 사용자에게 친숙한 방법을 원하는 경우 다음 줄을 입력하여 PHPMyAdmin을 설치할 수 있습니다.

sudo apt 설치 phpmyadmin

데이터베이스 관리를위한 코드 라인을 우회하는 사용하기 쉬운 데이터베이스 관리 도구.

아파치 설정

마지막 단계는 Apache가 DNS 레코드의 도메인 이름에서 들어오는 웹 요청을 수락하도록 허용하는 것입니다. 이러한 레코드를 설정하는 데 도움이 필요한 경우 DNS 호스팅 제공 업체에 온라인 도구가 있어야 구성 할 수 있습니다..

터미널에 다음 줄을 입력하십시오.

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

sudo sh -c”echo“example.com

이것은 내 자체 호스팅 사이트 example.com입니다

” > /var/www/html/example.com/index.html

sudo chmod -R 755 /var/www/html/example.com

도메인의 디렉토리가 설정됩니다. 하지만 페이지를 보려면 Apache 용 가상 호스트 파일을 설정해야합니다. 다음 줄을 입력하십시오.

sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/example.com.conf

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

이제 다음과 일치하도록 Apache 파일을 편집하십시오.

ServerAdmin [이메일 보호]

ServerName example.com

ServerAlias ​​www.example.com

DocumentRoot /var/www/html/example.com

ErrorLog $ {APACHE_LOG_DIR} /error.log

CustomLog $ {APACHE_LOG_DIR} /access.log 결합

다음을 입력하여 변경 사항을 적용하려면 Apache를 다시로드하십시오.

sudo a2ensite example.com.conf

sudo 서비스 apache2 새로 고침

Windows와 마찬가지로 IP 주소와 도메인 이름을 시스템 호스트 파일에 추가하여 로컬로 일치시킵니다..

자신의 웹 사이트 호스팅의 장단점

그러나 자신의 웹 사이트를 호스팅하는 것이 좋은 것은 아닙니다. 처음에는 비용 절감이 유일한 장점이지만 장기적으로는 부족합니다.

자체 서버를 실행하면 “공유 호스팅”이라고 말하는 것보다 전기 요금이 더 빨리 쌓입니다. 서버를 항상 켜고 인터넷에 연결해야하기 때문에 실제로 비용이 많이 드는 웹 호스팅 요금제를 구입하는 것보다 비용이 훨씬 많이 듭니다.

그것은 주거 지역에서의 정전 가능성을 고려조차하지 않습니다. 나와 같은 지역에서 자주 중단되는 경향이있는 경우, 특히 웹 사이트의 안정성이 강화 된 ISP가 없으면 백업 할 수 없습니다..

비용은 비싸지 만 자신의 사이트를 호스팅하는 실용성은 없습니다. 웹 사이트의 연결 속도가 느려서 Google 검색 순위가 손상되고 잠재적 인 방문자가 사라질 수 있습니다. 많은 저렴한 호스트가 1-2 초 범위를 처리하지만, 주거 연결은 15-20 초 범위를 처리합니다..

자신의 웹 사이트를 온라인 상태로 만드는 프로세스는 웹 호스팅의 작동 방식을 이해하는 교육 도구로 사용하는 것이 가장 좋습니다. 모든 도구에 자신을 노출시킴으로써 외부 호스트를 통해 더 나은 사이트를 구성 할 수 있습니다.

비용이 문제가된다면, 저렴한 가격으로 훌륭한 서비스를 제공하는 제공 업체를 분류하는 가장 저렴한 웹 호스팅 목록을 확인하십시오. 우리가 가장 좋아하는 옵션은 iPage입니다.

그러나 자신의 웹 사이트를 호스팅하는 것은 준비를위한 옵션이거나 작은 WordPress 블로그를 실행할 계획이있는 경우 옵션입니다. 그런 경우 WordPress 사용에 대한 가이드를 확인하십시오. 

  • WordPress 사용 초보자 안내서
  • 워드 프레스 사용에 대한 중간 안내서
  • 워드 프레스 사용에 대한 고급 안내서

결론

자신의 웹 사이트를 호스팅하는 것은 (나 같은) 괴짜만큼 재미있을 것입니다. 오래된 하드웨어에서 새로운 기술 완구를 가지고 놀면서 웹 호스팅 세계와 그 기능에 대해 더 많이 배울 수있는 기회.

불행히도, 그게 가장 잘 사용됩니다. 서버에 심각한 영향을 미치지 않는 한 웹 사이트 호스팅을 실질적이고 금전적 인 옵션으로 만들기는 어렵습니다. 이를 위해 우리는 최고의 웹 호스팅 제공 업체를 선정하여 정보에 입각 한 선택을 할 수 있습니다.

홈 호스팅 경험은 어땠습니까? 아래 의견에 알려주십시오. 항상 그렇듯이 읽어 주셔서 감사합니다..

Kim Martin Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map