Windows용 로컬 웹 서버를 선택합니다. 웹 서버: 용도, 설계 방식, 작동 방식 가장 일반적인 웹 서버

안녕하세요. 이 문서에서는 웹 애플리케이션용 서버를 설정하는 데 가장 많이 사용되는 5가지 옵션을 다룹니다. 어떤 옵션이 있으며 어떤 옵션을 선택해야 합니까?

성능, 확장성, 가용성, 안정성, 비용, 관리 용이성 등 서버 환경을 선택할 때 고려해야 할 요소가 많습니다.

이 기사에서는 가장 일반적으로 사용되는 서버 환경 세트를 장단점을 포함한 간략한 설명과 함께 제시합니다. 모든 개념은 서로 다른 조합으로 사용될 수 있고 각 환경마다 요구 사항이 다르기 때문에 하나의 올바른 구성은 없습니다.

1. 하나의 서버에 모든 것

환경은 동일한 서버에 있습니다. 일반적인 웹 애플리케이션의 경우 여기에는 웹 서버, 애플리케이션 서버 및 데이터베이스 서버가 포함됩니다. 이 세트를 구현하는 특별한 경우는 단일 서버에서 이름이 Linux, Apache, MySQL 및 PHP의 약어인 입니다.

사용 예:가장 간단한 구성이므로 애플리케이션을 빠르게 배포하는 데 적합하지만 확장성과 구성 요소 격리가 거의 제공되지 않습니다.

장점:

  • 간단

단점:

  • 애플리케이션과 데이터베이스는 동일한 서버 리소스(CPU, 메모리, I/O 등)를 공유하므로 잠재적인 성능 저하 외에도 이러한 성능 저하의 원인(애플리케이션 또는 데이터베이스)을 파악하기가 어렵습니다.
  • 수평 확장이 어렵습니다.

2. 전용 데이터베이스 서버

데이터베이스 관리 시스템(DBMS)을 나머지 환경과 분리하여 애플리케이션과 데이터베이스 간의 서버 자원 경쟁을 없애고 공용 인터넷인 DMZ에서 데이터베이스를 제거하여 보안을 강화할 수 있습니다.

사용 예:애플리케이션을 신속하게 배포하는 데 적합할 뿐만 아니라 동일한 시스템 리소스를 놓고 애플리케이션과 데이터베이스가 경쟁하는 문제도 제거합니다.

장점:

  • 애플리케이션과 데이터베이스는 동일한 서버 리소스(CPU, 메모리, I/O 등)를 놓고 경쟁하지 않습니다.
  • 원하는 서버에 추가 리소스를 추가하여 각 구성 요소(애플리케이션 및 데이터베이스)를 독립적으로 수직적으로 확장할 수 있습니다.
  • 특정 설정을 사용하면 DMZ에서 데이터베이스를 제거하여 보안을 강화할 수 있습니다.

단점:

  • 설치 프로세스는 단일 서버보다 조금 더 복잡합니다.
  • 두 서버 간의 네트워크 연결에 응답 시간이 길거나(예: 서버가 지리적으로 서로 멀리 떨어져 있는 경우) 전송되는 데이터에 대역폭이 부족한 경우 성능 문제가 발생할 수 있습니다.

3. 로드 밸런서(역방향 프록시)

로드 밸런서를 서버 환경에 추가하면 여러 서버에 로드를 분산시켜 성능과 안정성을 높일 수 있습니다. 서버 중 하나가 다운되면 다운된 서버가 다시 작동하여 실행될 때까지 다른 서버가 들어오는 트래픽을 처리합니다. 로드 밸런서는 역방향 프록시를 사용하여 동일한 도메인 및 포트를 통해 여러 애플리케이션을 제공하는 데에도 사용할 수 있습니다.

역방향 프록시 지원 소프트웨어의 예로는 HAProxy 및 Varnish가 있습니다.

사용 예:서버를 추가하여 확장(수평적 확장이라고도 함)이 필요한 환경에 유용합니다.

장점:

  • 수평적 확장이 가능합니다. 즉, 새로운 서버를 추가하여 환경의 리소스를 늘릴 수 있습니다.
  • 클라이언트 연결을 허용 가능한 수와 빈도로 제한하여 DDOS 공격으로부터 보호할 수 있습니다.

단점:

  • 로드 밸런서는 리소스가 부족하거나 잘못 구성되면 성능 병목 현상이 발생할 수 있습니다.
  • 예를 들어 소위 "고정 세션"이 필요한 응용 프로그램 작업과 같이 관리자의 추가 노력이 필요한 추가적인 문제가 발생할 수 있습니다.

4. HTTP 가속기(역방향 프록시 캐싱)

HTTP 요청을 캐시하는 HTTP 가속기 또는 역방향 프록시를 사용하면 다양한 방법을 통해 사용자에게 콘텐츠를 제공하는 데 필요한 시간을 줄일 수 있습니다. HTTP 가속기와 함께 사용되는 기본 기술은 웹 또는 애플리케이션 서버의 응답을 메모리에 캐시하여 동일한 콘텐츠에 대한 후속 요청을 신속하게 처리하고 웹 또는 애플리케이션 서버와의 불필요한 상호 작용을 줄이는 것입니다.

HTTP 가속을 지원하는 소프트웨어의 예: Varnish, Squid, Nginx.

사용 예:콘텐츠가 많거나 동시에 액세스할 수 있는 파일 수가 많은 동적 웹 애플리케이션에 유용합니다.

장점:

  • 캐싱 및 압축을 통해 웹 서버 프로세서의 부하를 줄여 서비스를 받는 사용자 수를 늘려 사이트 성능을 향상시킵니다.
  • 역방향 프록시 로드 밸런서로 사용할 수 있습니다.
  • 일부 캐싱 소프트웨어는 DDOS 공격으로부터 보호할 수 있습니다.

단점:

  • 최상의 성능을 얻으려면 조정이 필요합니다.
  • 사용자 요청의 특성상 효과적인 캐싱이 허용되지 않는 경우 서버 성능이 저하될 수 있습니다.

5. Master-Slave 방식에 따른 데이터베이스 복제

콘텐츠 관리 시스템(CMS)과 같이 쓰기 요청보다 읽기 요청이 더 많은 데이터베이스 시스템의 성능을 향상시키는 한 가지 방법은 마스터-슬레이브 데이터베이스 복제를 사용하는 것입니다. 이 체계는 하나의 마스터 노드와 하나 이상의 슬레이브 노드가 있다고 가정합니다. 이 경우 모든 쓰기는 마스터 노드로 전달되며 읽기 요청은 모든 노드에 분산될 수 있습니다.

사용 예:데이터베이스 읽기 측면에서 애플리케이션 성능이 크게 향상됩니다.

다음은 하나의 슬레이브 노드를 사용한 마스터-슬레이브 데이터베이스 복제의 예입니다.

장점:

  • 슬레이브 노드 전체에 읽기 요청을 분산하여 데이터베이스 읽기 성능을 향상시킵니다.
  • 쓰기 전용으로 마스터 노드를 사용하여 쓰기 성능을 향상시킬 수 있습니다(따라서 읽기 요청을 처리하는 데 시간을 낭비하지 않습니다).

단점:

  • 데이터베이스 애플리케이션에는 읽기 및 쓰기 요청을 보낼 노드를 결정하는 메커니즘이 있어야 합니다.
  • 슬레이브 노드 업데이트는 비동기식이므로 쿼리 시 데이터가 최신이 아닐 가능성이 있습니다.
  • 마스터 노드의 작동이 중지되면 문제가 해결될 때까지 데이터베이스를 업데이트할 수 없습니다.
  • 메인 노드 장애 시 백업 기능이 내장되어 있지 않습니다.

예: 개념 결합

단일 환경에서 애플리케이션 서버 외에도 캐시 서버의 로드 밸런싱을 수행하고 데이터베이스 복제를 사용할 수 있습니다. 이러한 방법을 결합하는 목적은 복잡성을 추가하지 않고 각 접근 방식의 이점을 얻는 것입니다.

다음은 서버 환경의 대략적인 다이어그램입니다.

로드 밸런서가 정적 요청(예: 이미지, CSS, JavaScript 등)을 인식하고 해당 요청을 캐싱 서버로 보내고 기타 모든 요청을 애플리케이션 서버로 보내도록 구성되었다고 가정해 보겠습니다.

사용자가 동적 콘텐츠에 대한 요청을 제출하면 다음과 같은 일이 발생합니다.

  1. 사용자는 다음을 사용하여 동적 콘텐츠를 요청합니다. http://example.com/(로드 밸런서).
  2. 로드 밸런서는 애플리케이션 서버(app-backend)에 요청을 보냅니다.

사용자가 정적 콘텐츠를 요청하는 경우:

  1. 로드 밸런서는 요청된 콘텐츠가 캐시되었는지 확인하기 위해 캐시 백엔드를 확인합니다.
  2. 캐시된 경우, 요청된 콘텐츠가 로드 밸런서로 반환되면 7단계로 이동합니다. 캐시되지 않은 경우, 그러면 캐싱 서버는 로드 밸런서를 통해 애플리케이션 서버로 요청을 전달합니다.
  3. 로드 밸런서는 요청을 애플리케이션 서버로 전달합니다.
  4. 애플리케이션 서버(app-backend)는 데이터베이스에서 읽고 요청된 콘텐츠를 로드 밸런서에 다시 반환합니다.
  5. 로드 밸런서는 응답을 캐싱 서버(cache-backend)로 전달합니다.
  6. 캐싱 서버는 수신된 콘텐츠를 캐시하여 로드 밸런서로 반환합니다.
  7. 로드 밸런서는 요청된 콘텐츠를 사용자에게 반환합니다.

이 환경에는 두 가지 실패 지점(로드 밸런서 및 데이터베이스 마스터)이 있지만 이전에 각 지점에서 설명한 다른 안정성 및 성능 이점을 제공합니다.

이제 자신의 애플리케이션에 정확히 무엇을 사용할 것인지에 대한 좋은 아이디어를 갖게 되었습니다. 환경을 개선하기 위해 작업하는 경우 불필요한 복잡성을 피하기 위해 반복적으로 진행하는 것이 가장 좋습니다.

ASF의 아파치. 과장하지 않고 이것이 세계에서 가장 널리 퍼진 웹 서버라고 말할 수 있습니다. 이제 Windows NT를 포함하여 거의 모든 알려진 플랫폼과 운영 체제에 대한 버전이 있습니다. Windows NT에 대한 지원은 최신 버전에서만 나타났으며 이로 인해 전 세계적으로 Apache의 인기가 더욱 높아졌습니다. 의심할 여지 없는 장점은 신뢰성, 탁월한 성능, 다양한 기능 및 추가 모듈입니다. 하지만 여전히 이 서버의 "하이라이트"는 무료, 무료 배포입니다. 이를 통해 비용을 절감할 수 있을 뿐만 아니라 신속하게 오류를 수정하고 프로그램 코드에 필요한 추가 작업을 수행할 수 있습니다. 우리는 Apache 웹 서버를 만드는 사람들에게 경의를 표해야 합니다. 이 사람들은 무료이며, 가장 중요하게는 발견한 오류에 매우 신속하게 대처합니다. 그건 그렇고, 이 서버의 개발에 기여하고 싶은 사람은 누구나 그런 사람이 될 수 있다는 점에 주목합니다. 버전 1.3.x는 전체 Apache 제품군 중에서 가장 안정적이고 빠른 버전 중 하나로 간주됩니다. Apache의 주요 속성은 크로스 플랫폼 지원, HTTP/1.1 프로토콜, 모듈식 구조, 보안 및 로깅입니다. 표준 패키지 외에도 Apache의 기능을 확장하는 수많은 모듈이 있습니다. 무료 배포 및 오픈 소스를 사용하면 가장 안전한 모듈을 만들 수 있습니다. 이 점에서 어떤 상용 서버도 Apache와 경쟁하기는 어렵습니다. 그러나 이러한 모든 장점에도 불구하고 여전히 단점이라고 할 수 없는 심각한 격차도 있습니다. Apache에는 아름다운 설치 및 관리 프로그램이 없습니다. 설치하는 동안 명령줄을 처리해야 합니다. 게다가 UNIX에 설치할 때 포함 파일을 조정해야 하는 경우도 있습니다. 물론 무엇을 변경해야 하는지, 어떻게 변경해야 하는지에 대한 자세한 설명이 있지만 언뜻 보기에는 그다지 편리해 보이지 않습니다. 작업할 때 윈도우 프로그램을 다루지 않고 텍스트 구성 파일을 다루어야 합니다. 기술 지원은 아름다운 도움말 파일이나 전문가를 제공하는 회사의 형태로 나타나지 않고 주로 원격 회의 및 시스템 관리자의 의견 교환을 통해 나타납니다. 실제로 기술 지원 서비스를 제공하는 회사도 있지만 비용이 많이 듭니다. 그러나 심각한 제품에서는 이례적인 이러한 스타일이 Apache의 인기를 떨어뜨리지는 않으며 시장에서 Apache는 모든 WWW 서버에 대한 가장 심각한 경쟁자입니다.

아이플래닛 서버 ( Netscape 및 Sun의 이전 Netscape Enterprise 서버). 얼마 전 Netscape와 Sun은 웹 서버 생성 분야에서 합병되었습니다. 즉, 이전 Netscape Enterprise 서버가 이제 새로운 품질인 iPlanet 서버로 이동했습니다. 이것은 단순한 이름 변경이 아닙니다. 이제 이전 서버의 많은 특성에 Java 기술과의 긴밀한 통합이 추가되었습니다. 최신 버전은 4.1이다. CD로 제공되거나 인터넷에서 다운로드할 수 있는 iPlanet Server. 그러나 그것은 무료가 아닙니다. Windows NT 및 일부 UNIX 시스템용 버전이 있습니다. 설치, 구성 및 관리가 용이하다는 점이 매력적입니다. 기본 설치에는 15분도 걸리지 않습니다. 모든 추가 구성은 어디에서나 브라우저에서 실행되는 Java 프로그램을 사용하여 수행됩니다. Java의 경우 예상대로 서버는 Java Servlets 2.1, Java Server Pages .92, JVM, JavaScript 1.4와 같은 최신 Java 기술을 지원합니다. 현재 이것은 이러한 유형의 유일한 서버입니다. 이 외에도 iPlanet 서버에는 데이터베이스 액세스 제어 기능이 포함되어 있습니다. Oracle, Informix, DB2 및 Sybase와 함께 작동하기 위한 드라이버가 함께 제공됩니다. iPlanet 서버 프로그래밍 측면에서 이제 iPlanet Application Server와의 통합 경향이 있습니다. 이는 iPlanet 웹 서버용 프로그램 작성 가능성을 크게 확장할 것입니다. 이러한 모든 속성은 iPlanet Web Server를 다양한 영역에서 사용하기에 매력적으로 만듭니다. FastTrack 서버에서도 작업이 진행 중입니다. 이 서버는 전체 서버의 제한된 용량과 유사하지만 동시에 무료입니다(Netscape FastTrack과 완전히 유사). 기술 지원과 관련하여 iPlanet 서버에 관한 모든 설명, 참고 서적 및 기타 자료는 높은 수준에서 작성됩니다(Netscape 서버에 있는 모든 문서와 마찬가지로).

인터넷정보서버 (IIS)마이크로소프트에서. IIS 서버 에 가장 적합합니다윈도우 NT . 운영 체제 개발자 외에는 누구도 이 시스템의 기능을 완전히 활용하는 프로그램을 만들 수 없기 때문에 이는 이해할 수 있습니다. 버전 4.0은 서비스 팩과 함께 무료로 제공되었으며 버전 5.0은 Windows 2000의 일부로만 제공됩니다. 전문가에 따르면 버전 5.0은 더 높은 신뢰성, Windows와의 더욱 긴밀한 통합 및 다양한 새로운 기능을 갖추고 있습니다. 설치 및 구성에는 10분도 채 걸리지 않습니다. 이제 서비스 팩을 설치할 필요가 없고 설치 후 시스템을 재부팅할 필요가 없다는 점이 특히 좋습니다. 이 모든 것을 통해 서버 자체는 약 30MB의 디스크 공간을 차지하고 128MB 메모리를 갖춘 Pentium 200MHz 시스템에서 꽤 잘 작동합니다. 그러나 Windows 2000 Server에서만 서버를 설치하고 실행할 수 있습니다. 편리한 설치는 물론, 서버 관리 시스템도 편리하게 구현되었습니다. 빈번하고 일상적인 작업을 수행하는 데 유용한 여러 가지 템플릿 프로그램(마법사)이 있습니다. 일반적으로 공정하게 말하면 다음 사항에 유의해야 합니다. 편의성 측면에서 Microsoft 프로그램과 경쟁할 수 있는 프로그램은 거의 없습니다. 또한 IIS는 잘 알려진 보안 표준을 지원하며 새로운 보안 표준을 포함합니다. 따라서 잘 알려진 방법인 SSL 3.0, Kerberos 5.0 및 새로운 Fortezza 방법(새로운 보안 표준)이 지원됩니다. IIS의 가장 흥미롭고 독특한 특징은 WebDAV(Web-based Distributed Authoring and Versioning)에 대한 지원입니다. 주변 컴퓨터의 자원을 자신의 것처럼 활용하여 내부 네트워크를 하나의 공간으로 만들 수 있도록 최근에 등장한 표준입니다. IIS 사용자의 경우 이는 작업 파일을 더 쉽게 공유하고 파일을 잠글 수 있다는 의미입니다. 그러나 몇 가지 문제와 비호환성이 있습니다. Front Page Server와 동시에 작업하는 것은 완전히 올바르지 않습니다. 때로는 구성을 변경할 때 시스템을 다시 시작해야 하고 원격 관리 시스템을 사용할 때 오류가 발생합니다. 그러나 전체적으로 버전 5.0은 신뢰성과 유용성 측면에서 4.0에 비해 크게 개선되었습니다.

중요한 지표는 서버 성능입니다. 성능은 연결된 클라이언트 수와 요청한 데이터의 전송 강도에 따른 서버 속도를 나타냅니다. 성능은 프로세서의 유형과 속도, RAM 용량, 운영 체제, 다른 프로그램의 존재 여부, 서버 자체 설정 등 여러 요소에 따라 달라집니다. 아파치의 경우 좀 더 이국적인 순간이 있다. 일반적으로 원본 텍스트 형식으로 사용됩니다. 따라서 컴파일된 프로그램의 성능은 컴파일러와 링커의 유형과 매개변수에 따라 달라집니다. 모든 것이 웹 서버에 의존하는 것은 아니기 때문에 성능을 측정하는 것은 매우 어려운 작업입니다. 웹 서버의 성능을 비교하려면 동일한 조건에 놓아야 합니다. 실제로 Intel에서 Windows 2000을 실행하는 IIS 서버와 RS6000에서 AIX 4.3을 실행하는 Apache 서버를 동일한 조건으로 두는 것이 무엇을 의미하는지 완전히 명확하지 않습니다. 이들은 유형과 구조가 완전히 다른 운영 체제이며 다른 프로세서입니다. 내 생각에 여기서 가장 미묘한 점은 웹 서버와 관련된 것과 다른 모든 것과 관련된 것을 구별하는 것입니다. 그럼에도 불구하고 그러한 연구가 진행되고 있다. 그 중 일부 결과는 동일한 Webcompare 서버에서 찾을 수 있습니다. 이 테스트에서 Apache의 성능은 두 경쟁사에 비해 약간 낮지만 이미 말했듯이 이러한 테스트를 수행하는 방법론과 가장 중요한 것은 정보 처리 원리가 명확하지 않다는 점을 간략히 언급하겠습니다.

WWW 서버에 직접적으로 내재된 속성 외에도 운영 체제와 웹 서버 전체의 작동과 관련된 문제도 있습니다. 이것은 주로 Windows 2000에 가장 적합한 IIS 서버와 관련이 있습니다. 그리고 요점은 이 서버가 아니라 Windows에 있으며 전체 시스템을 다시 시작해야 할 필요성이 다른 운영 체제보다 훨씬 더 자주 발생한다는 사실입니다. 이로 인해 웹 서버가 불안정해질 수 있습니다. 예를 들어 인터넷 라디오와 같은 실시간 시스템에서는 작동의 안정성이 제어의 용이성보다 더 중요한 기준이 되는 경우가 있습니다.

웹 사이트나 블로그를 인터넷에 올리기 전에 웹 사이트 디자인이 얼마나 잘 보이는지, 스크립트, 피드백 양식, 플러그인 등이 어떻게 작동하는지 테스트해야 합니다.
이것이 바로 많은 웹 개발자들이 ( 블로거, 웹 디자이너 또는 웹 프로그래머) 일반적으로 향후 프로젝트에 대한 테스트 작업을 확인, 테스트, 실험하는 테스트 사이트를 사용합니다.
생성하는 방법에는 두 가지가 있습니다. 테스트 사이트.
1. 호스팅 테스트 사이트
일부 초보자는 유료 호스팅을 사용하여 프로젝트를 테스트하고 두 개의 사이트(기본(작동) 사이트 하나와 추가 사이트 테스트)를 호스팅합니다.
이 방법의 단점:
- 호스팅 공간이 부족합니다.
- 낮은 인터넷 속도
- 프로젝트 테스트를 위해 유료 호스팅을 구매할 돈이 항상 있는 것은 아닙니다.
2. 컴퓨터의 테스트 사이트
내 생각에는 이 방법이 가장 좋은 것 같다. 좀 더 자세히 함께 살펴보고 싶습니다. 먼저 장점에 대해 이야기하겠습니다.
- 인터넷 연결이 필요하지 않습니다.
- 재정적 비용이 필요하지 않습니다.
컴퓨터에 있는 이 테스트 사이트는 무엇입니까?이것은 대략 로컬 서버, 컴퓨터에 설치되어 있습니다. 로컬 서버를 사용하면 프로젝트를 빠르고 쉽게 테스트할 수 있습니다.

누군가는 이렇게 말할 수도 있습니다. 왜 로컬 서버를 통해 프로젝트를 테스트합니까? 결국, "index.html" 파일을 열면 사이트가 인터넷에서 어떻게 보이는지 볼 수 있습니다. 예, 사실입니다. 이 정도면 충분합니다. 하지만 사이트(WordPress, Joomla, drupal)에서 채팅, 포럼 등을 사용하는 경우 로컬 서버 없이는 방법이 없습니다. 또한 프로젝트에 CMS 엔진(WordPress, Joomla, drupal)을 사용하는 경우 PHP 지원뿐만 아니라 MySQL 데이터베이스도 필요합니다.

그래서, 로컬 서버 컴퓨터에서 바로 스크립트의 올바른 작동을 보장하는 특별한 프로그램 세트입니다. 어셈블리에는 서버 자체, PHP 컴파일러( 그것의 도움으로 브라우저는 읽을 수 있습니다PHP 코드를 작성하고 페이지를 올바르게 처리하세요.), 데이터베이스(데이터베이스) 및 기타 여러 프로그램 작업을 위한 구성 요소입니다.

나는 당신을 위해 사이트의 인기 있는 로컬 서버 목록을 준비했습니다. 읽고, 평가하고, 다운로드하고 사용하세요.

사이트의 인기 있는 로컬 서버 목록입니다.

덴워웹사이트, 웹 애플리케이션 또는 인터넷 페이지를 테스트하기 위한 무료 로컬 서버입니다. Denwer에는 데이터베이스(데이터베이스) 및 기타 프로그램 작업을 위한 Apache 웹 서버, phpMyAdmin 및 MySQL 패널이 포함되어 있습니다.
로컬 Denwer 서버는 Windows 운영 체제에서만 실행됩니다.

공식 웹사이트 denwer.ru에서 다운로드할 수 있습니다.

XAMPP간단한 사용자 인터페이스를 사용하여 웹사이트, 웹 애플리케이션 또는 인터넷 페이지를 테스트하기 위한 무료 로컬 서버입니다. Windows, Solaris, Mac OS X 및 Linux에서의 작업을 지원합니다.

공식 홈페이지에서 다운로드 가능 www.apachefriends.org/en/xampp.html

AppServ- 또 다른 무료 로컬 서버. 빠르고 쉬운 설치.

공식 웹사이트 www.appservnetwork.com에서 다운로드할 수 있습니다.

VertigoServ- 로컬 서버 설치가 쉽습니다.
Windows 운영 체제에서만 작동합니다.

공식 웹사이트 vertrigo.sourceforge.net에서 다운로드할 수 있습니다.

젠드 서버 커뮤니티 에디션- 무료 로컬 서버.

공식 홈페이지(www.zend.com)에서 다운로드할 수 있습니다.

오픈서버웹사이트 개발 및 제작을 위한 높은 기능을 갖춘 무료 로컬 서버입니다. Windows 운영 체제에서 실행됩니다.

공식 웹사이트 open-server.ru에서 다운로드할 수 있습니다.

개인적으로 저는 무료 로컬 서버를 사용합니다. 왜 Denwer가 아닌 다른 것입니까? 습관일 가능성이 높습니다. 저는 로컬 Denwer 서버로 시작했기 때문에 그것만 사용합니다. 그리고 작업할 로컬 서버를 선택해야 합니다.

로컬 서버를 다운로드하여 컴퓨터에 설치하고, 비디오 강의나 사용 지침을 읽거나 시청하세요. 웹 프로젝트를 테스트하고 많은 수입을 올리세요!

시간이 지남에 따라 모든 웹 개발자( 블로거, 웹 디자이너 또는 웹 프로그래머) 문제 없이 연습할 수 있는 특별한 시험장이 필요합니다. 웹사이트 개발또는 다른 웹 프로젝트를 테스트합니다. 일부 초보자는 유료 호스팅 리소스를 사용하여 여기에 최소 두 개의 웹사이트를 배치합니다. 작업자 1명( 기초적인), 그리고 나머지 ( 추가의) 시험용. 시험장에서는 다양한 시험을 거칩니다( 다양한 플러그인, 테마, 스크립트 등 설치 및 테스트).

결과적으로 이 레이아웃을 사용하면 대부분의 호스팅 리소스가 테스트 프로젝트에서 소비되므로 주요 프로덕션 사이트가 크게 어려움을 겪게 됩니다. 그러나 손실 없이 허용하는 또 다른 방법이 있습니다( 돈이나 자원 면에서나) 귀하의 사이트에 대한 테스트를 수행하면 이제 이 방법을 고려해 보겠습니다.

왜 안 돼?

귀하의 웹 사이트를 인터넷에 게시하려면 도메인 이름을 등록하고 호스팅, 즉 PHP 스크립트를 실행할 수 있는 고속 연결이 가능한 일부 컴퓨터의 디스크 공간을 구입해야 한다는 것을 이미 알고 계실 것입니다. 사이트가 제대로 작동하려면 PHP와 MySQL이 설치되어 있어야 합니다. 이 모든 것은 일반 컴퓨터에서는 사용할 수 없습니다. 컴퓨터에서 HTML 및 PHP 파일을 어떻게 실행할 수 있나요?

일반 파일은 Notepad++ 또는 Notepad를 사용하여 열 수 있습니다. 안에 뭔가를 쓰고 저장한 다음 문제 없이 브라우저에서 이 파일을 열고 이 파일이 인터넷의 호스팅 사이트에서 어떻게 보이는지 확인하세요. 즉, 우리는 이미 작동하는 HTML 페이지를 보고 있습니다. 그 안에서 우리는 인터넷 연결 없이 특정 디자인, 콘텐츠를 만들고 프로젝트를 모니터링할 수 있습니다. 본질적으로 우리는 이미 모든 것을 갖추고 있습니다. 브라우저를 사용하여 PHP 파일을 실행하려는 경우 Windows 운영 체제의 PHP 스크립트는 추가 소프트웨어 없이는 작동하지 않기 때문에 성공하지 못할 것입니다.

이 모든 것은 일반 컴퓨터에서는 사용할 수 없으므로 웹 프로젝트로 작업할 가능성이 없습니다. 따라서 일부 초보자는 유료 호스팅의 추가 리소스에 돈을 쓰기 시작합니다. 하지만 이 경우에는 어떻게 해야 할까요? 대답은 간단합니다. 컴퓨터에 직접 전용 서버를 설치할 수 있는 특별한 프로그램이 있습니다.

서버란 무엇입니까?

무슨 일이야? 섬기는 사람로컬 서버가 네트워크에 있는 서버와 어떻게 다른지. 우리의 경우 서버는 컴퓨터가 아니라 사이트의 최적 작동을 보장하는 특수 프로그램 세트를 의미합니다. 사이트가 작동하려면 서버()의 특별히 지정된 위치에 사이트를 설치해야 합니다. 즉, 사이트 파일을 원격 컴퓨터에 다운로드합니다. 그러나 특별한 서버 프로그램이 없으면 업로드된 파일이 네트워크에 표시되지 않습니다. 이제 이러한 목적을 위해 가정용 컴퓨터에 자체 서버를 만들겠습니다.

이를 위해서는 특별한 프로그램이 필요합니다. 그러나 어느 것이 더 적합하며 추가 작업 중에 어떤 어려움을 초래할 수 있습니까? 참고로 아래에는 전 세계 인기순으로 최고의 웹 서버 목록이 나와 있습니다. 그러나 이것이 즉시 설치되어야 한다는 의미는 아닙니다. 이유는 나중에 설명하겠습니다!

최고의 웹 서버 목록

현재 다양한 제조업체의 여러 솔루션이 시장에 나와 있습니다.

  • (웹사이트 - apache.org)은 네트워크에서 가장 광범위하고 인기 있는 무료 서버입니다. 더 안정적이고 유연합니다. 서버는 프로세서 리소스를 요구하지 않으며 많은 사이트에 서비스를 제공할 수 있습니다. 이 애플리케이션은 Unix, Linux, Solaris, Mac OS X, Microsoft Windows 등을 포함한 광범위한 운영 체제에서 사용할 수 있습니다. 현재 Apache 사용량은 71%입니다. 그러나 이것은 모든 초보자가 다룰 수 있는 복잡한 프로그램은 아닙니다.

  • (웹사이트 - www.iis.net)은 Microsoft의 또 다른 안정적인 서버입니다. 온라인 사용량은 14%로 2위를 확고히 자리 잡았습니다. 프로그램을 설치한 후에는 두 가지 프로그래밍 언어만 지원됩니다( VBScript 및 JScript). 그러나 필요한 확장 기능을 설치하면 추가 기능을 열 수 있습니다. 이러한 모듈을 설치하면 이 서버의 기능이 크게 향상됩니다.

  • 엔진엑스 (웹사이트 - nginx.org/ru/)는 러시아 인터넷에서 가장 인기 있는 웹 서버입니다. 처음 두 개에 비해 가장 간단하고 불필요한 기능이 없습니다. 신뢰성과 빠른 속도에서도 호평을 받고 있습니다. 이 제품의 개발자는 우리 동포 Igor Sysoev입니다. 2004년에 그는 nginx의 첫 번째 버전을 출시했습니다. 이제 이 소프트웨어 제품은 세계에서 가장 인기 있는 세 가지 웹 서버 중 하나가 되었습니다. 사용량은 약 6.5%이다.

  • (웹사이트 - litespeedtech.com) - 이 웹 서버는 많은 기능을 가지고 있지 않지만 매우 빠른 속도를 가지고 있습니다. 널리 사용되는 Apache보다 9배 빠릅니다. 안전에 많은 관심을 기울이고 있습니다 ( 시스템 과부하, http 요청의 엄격한 검사, 안티 디도스 등에 대한 자체 보호). LiteSpeed는 Solaris, Linux, FreeBSD 및 Mac OS X에서 사용할 수 있습니다. 이 프로그램의 사용률은 1.5%입니다.

물론 이 밖에도 유사한 프로그램이 많이 있지만, 사용자들 사이에서 사용률과 신뢰도는 이만큼 높지 않습니다. 안타깝게도 하나의 프로그램만으로는 이 작업을 수행할 수 없습니다. 대규모 프로젝트에 유용할 뿐만 아니라 설치 및 구성도 어려울 수 있습니다. 또한, 이러한 서버 외에 일부 프로그램의 별도 설치 및 구성이 필요합니다( 예를 들어 데이터베이스 작업을 위해). 이 모든 것이 많은 사용자에게 심각한 어려움을 야기합니다. 이 경우 어떻게 해야 합니까?

로컬 서버 기능

현재 초보 웹마스터의 삶을 더 쉽게 만들어 줄 수 있는 다양한 배포판이 많이 있습니다. 설치가 매우 쉽고, 작동하기 쉽고, 리소스 요구도 적으며, 최고의 성능을 위해 필요한 소프트웨어 요소가 포함되어 있습니다.

그건 로컬 서버- 이것은 하나의 프로그램이 아닙니다 ( 하나의 특정 웹 서버가 아님)이지만 복잡한 서버 프로그램의 경량 버전을 포함하는 특수 컬렉션입니다. 일반적으로 어셈블리에는 다음이 포함됩니다. 서버 자체( 대부분 Apache이지만 다른 것도 있을 수 있습니다.), PHP 컴파일러( 도움을 받아 브라우저는 코드를 읽고 페이지를 조합할 수 있습니다.), 데이터베이스 작업을 위한 구성 요소, 다양한 설치 프로그램 및 기타 여러 프로그램. 이 모든 것이 각 프로그램을 별도로 설치하고 구성하는 것보다 훨씬 쉽습니다.

또한 로컬 서버의 기본 패키지에 별도의 모듈을 연결해 기능을 확장할 수도 있습니다. 또 다른 중요한 기능은 일부 서버에서는 이동식 플래시 드라이브에서 작업할 수 있다는 것입니다. 일반적으로 이러한 어셈블리는 신속한 웹 사이트 개발, 소규모 프로젝트 테스트, 때로는 대규모 프로젝트 테스트에 매우 적합합니다.

인기 있는 로컬 서버 검토

다음은 귀하에게 유용할 수 있는 몇 가지 빌드입니다.

  • (웹사이트 - denwer.ru)은 웹사이트, 웹 애플리케이션 또는 인터넷 페이지와 작동하도록 설계된 무료 국내 서버입니다. 개발자는 Dmitry Koterov와 Anton Sushchev입니다. 이 제품에는 단순화된 작업에 필요한 배포판이 포함되어 있습니다. 예를 들어, 여기에는 다양한 지원을 제공하는 Apache 웹 서버, 데이터베이스 및 기타 프로그램 작업을 위한 phpMyAdmin 패널 및 MySQL이 포함됩니다. 이동식 플래시 드라이브에서도 작업할 수 있습니다. 불행히도 Denwer는 Windows 운영 체제만 지원합니다.

  • XAMPP (웹사이트 - www.apachefriends.org/en/xampp.html)는 Apache 친구들이 만든 특별한 서버 빌드입니다. 필요한 배포판을 사용하면 완전한 웹 서버를 실행할 수 있습니다. 이 프로그램은 무료로 배포되며 Windows, Solaris, Mac OS X 및 Linux에서의 작업을 지원합니다. 다음과 같은 장점도 있습니다. 이 서버는 매우 간단한 사용자 인터페이스로 유명하여 많은 초보자가 선호합니다. 업데이트된 버전이 여러 번 나타납니다. 업데이트 프로세스는 매우 간단하고 사용자 친화적입니다. 추가 모듈이 있습니다. 다른 공식 웹사이트에서 필요한 버전을 다운로드할 수도 있습니다. sourceforge.net/projects/xampp/files.

  • (웹사이트 - www.appservnetwork.com)는 태국 제조업체의 우수한 서버로, 1분 안에 모든 배포판을 쉽게 설치하고 구성할 수 있다는 컨셉을 갖고 있습니다. 어셈블리의 첫 번째 릴리스는 2001년에 이루어졌으며 그 이후로 사용자 수가 계속 증가하고 있습니다. AppServ는 설치가 매우 쉽고 안정적으로 작동하며 공식 및 개별 릴리스보다 나쁘지 않으며 안정적인 성능을 통해 컴퓨터에 본격적인 웹 서버를 생성할 수 있습니다.
  • (웹사이트 - vertrigo.sourceforge.net) 또 다른 좋고 설치하기 쉬운 로컬 서버입니다. 어셈블리는 매우 유연하고 성능이 좋으며 디스크 공간을 거의 차지하지 않습니다. 안타깝게도 현재로서는 Windows OS에서만 작동합니다.
  • 젠드 서버 커뮤니티 에디션 (웹사이트 - www.zend.com)는 웹 애플리케이션과 함께 작동하도록 설계된 Zend의 무료 서버입니다. 컴퓨터에 로컬 서버를 빠르게 배포하는 데 필요한 모든 구성 요소가 포함되어 있습니다.

  • (웹사이트 - open-server.ru)은 웹사이트 및 기타 웹 프로젝트 개발 및 제작을 위한 높은 기능성을 갖춘 국내 휴대용 로컬 서버입니다. 다국어 인터페이스( 러시아어 포함) Windows OS에서 실행되도록 설계되었습니다. 이동식 미디어에서의 작업이 지원됩니다. 이 서버는 매우 훌륭하며 Denver의 좋은 대안으로 사용됩니다.

  • (웹사이트 - wampserver.com) - 러시아어 인터페이스를 사용한 또 다른 좋은 빌드( 다른 언어도 있어요). 간단하고 명확한 메뉴가 있으며, 편리한 설치와 조립 구성으로 인해 특별한 어려움이 발생하지 않습니다. 구성 파일에 영향을 주지 않고 구성을 수행할 수 있으며 이는 초보 웹마스터에게 매우 유용합니다. 서버는 무료로 배포되며 Windows 플랫폼에서만 실행됩니다. 아쉽게도 아직 휴대용 버전은 없습니다.
  • (웹사이트 - easyphp.org) - 러시아어를 지원하는 매우 간단한 어셈블리입니다. 이 어셈블리는 눈에 띄지 않고 큰 기능을 갖고 있지 않으며 주로 소규모 프로젝트를 테스트하기 위한 것입니다. 휴대용 미디어 작업이 지원됩니다. 이 서버는 Denver를 대체할 수 있는 좋은 서버가 될 것입니다.