>백엔드 개발 >PHP 튜토리얼 >우분투에서 PHP 서버 환경 구성

우분투에서 PHP 서버 환경 구성

WBOY
WBOY원래의
2016-07-25 08:54:131004검색
  1. $sudoapt-getinstallapache2
코드 복사

그런 다음 Apache를 실행합니다. $sudo/etc/init.d/apache2restart

Apache는 설치 중에 문서가 서버에 저장되는 루트 디렉터리인 /var/www라는 새 디렉터리를 생성합니다. 이 디렉토리에 있는 모든 문서에 액세스하려면 브라우저의 주소 표시줄에 http://localhost/ 또는 기기의 IP 주소를 입력하기만 하면 됩니다.

2. PHP 서버 구성 설치 설치 방법도 매우 간단합니다.

  1. $sudo apt-getinstalllibapache2-mod-php5
코드 복사

아파치를 다시 시작하여 위에 설치된 모듈을 로드합니다:

  1. $sudo /etc/init.d/apache2restart
확인을 위해 코드 복사

PHP 모듈이 올바르게 로드되면 PHP 파일을 생성한 다음 웹 서버를 통해 파일에 액세스해 볼 수 있습니다. 또한, 우리는 PHP에 환경에 대한 자세한 정보를 제공할 수 있는 phpinfo 기능이 내장되어 있다는 것을 알고 있습니다. 따라서 다음 명령을 사용하여 PHP의 작동 상태를 확인할 수도 있습니다.

  1. sudo sh-c "echo''>/var/www/info.php"
코드 복사

그런 다음 브라우저 주소 표시줄에 http://localhost/info.php를 입력하고 Enter를 누르면 방금 설치한 PHP에 대한 자세한 정보를 제공하는 페이지가 나타납니다. 이 과정에서 브라우저가 페이지를 표시하지 않고 파일을 다운로드하라는 메시지를 표시하는 경우 이는 Apache가 PHP 모듈을 올바르게 로드하지 않았음을 의미합니다. 문제에 대한 해결책은 /etc/apache2/apache2.conf 또는 /etc/apache2/mods-enabled/php5.conf 파일에 다음 명령 줄을 추가하는 것입니다: addtypeapplication/x-httpd-php.php.phtml.php3

위 명령줄을 추가한 후 Apache가 구성 파일을 다시 읽고 닫히도록 하려면 다음 명령을 통해 Apache를 닫았다가 다시 시작할 수 있습니다.

  1. $sudo /etc/init.d/apache2stop
  2. $sudo /etc/init.d/apache2start
코드 복사

3. 동적 가상 호스트 구성 일반적으로 우리는 웹 서버에서 여러 웹 사이트를 호스팅하며 각 사이트에는 자체 가상 서버가 있습니다. Apache의 경우 이름 기반 가상 서버와 IP 기반 서버를 모두 지원합니다.

IP 기반 가상 서버의 경우 사이트마다 별도의 IP 주소를 가지고 있는 것이 단점이지만, 현재는 IPv4 주소가 고갈되는 조짐이 있어 일반적으로 사용하지 않는 것이 좋습니다. SSL이 필요한 경우에만.

이름 기반 가상 서버의 경우 여러 웹 사이트가 하나의 IP 주소를 공유합니다. 이 경우 일반적으로 http 요청 헤더를 사용하여 이를 보낼 사이트를 결정합니다. 이렇게 하려면 웹 사이트의 루트인 디렉터리와 호스트의 이름을 지정하여 각 가상 서버에 대한 구성을 만들어야 합니다. 하지만 이 경우 새로운 가상 서버를 추가할 때마다 아파치의 구성을 수정하고 다시 시작해야 하는데, 이는 정말 짜증나는 일입니다!

좋은 소식은 동적 가상 호스트 기술을 사용하면 아파치를 재구성하거나 시작하지 않고도 언제든지 가상 호스트에 참여할 수 있다는 것입니다. 이 기술은 vhost_alias라는 모듈을 사용합니다. apache2 활성화 모듈 디렉토리에 심볼릭 링크를 만들어 모듈을 활성화할 수 있습니다. 명령은 다음과 같습니다.

  1. $sudo ln -s/etc/apache2/mods-available/vhost_alias.load
  2. /etc/apache2/mods-enabled/vhost_alias.load
코드 복사

vhost_alias가 제대로 작동하도록 하려면 /etc/apache2/apache2.conf를 수정하여 정식 이름을 끄고 로그 파일을 수정해야 합니다. 가상 호스트의 저장 위치를 ​​지정합니다.

예:

  1. #"host:" 헤더에서 호스트 이름 가져오기
  2. usecanonicalnameoff
  3. #이 로그 형식은 첫 번째 필드에서 추출할 수 있습니다. 호스트 이름
  4. logformat"%v%h%l%u%t"%r"%s%b"vcommon
  5. customlog/var/log/apache2/access_logvcommon
  6. # 요청된 파일 이름을 반환합니다. 경로 호스트를 포함합니다. name
  7. virtualdocumentroot/var/www/vhosts/%0/web
  8. virtualscriptalias/var/www/vhosts/%0/cgi-bin
코드 복사

다음으로 가상호스트를 저장할 디렉터리를 생성합니다.

  1. $sudo mkdir/var/www/vhosts
코드 복사

새 기본 가상 서버를 생성합니다. 명령은 다음과 같습니다.

  1. $sudo mkdir -p/var/www/vhosts/skeleton/cgi-bin
  2. $sudo cp -a/var/www/apache2- default/var/www/vhosts/skeleton/web
코드 복사

apache2를 다시 시작하여 위 구성을 적용합니다. 방법은 다음과 같습니다.

  1. $sudo /etc/init.d/apache2restart
코드 복사

알겠습니다. 이제 이름 기반 가상 호스트를 만들 수 있습니다. 이는 응답할 호스트 이름에 백본을 복사하여 수행됩니다. 예를 들어, bbs.it-home.org에 대한 새 가상 서버를 생성하려면 다음 명령을 실행하면 됩니다.

  1. $sudo cp -a/var/www/vhosts/skeleton/var/www/vhosts/
  2. bbs.it-home.org
코드 복사

이제 Apache 서버에 대한 모든 http 연결의 "host:" 헤더는 bbs.it-home.org로 설정됩니다. 응답할 것입니다. 우리 노동의 성과를 더 일찍 확인하기 위해 로컬에서 테스트할 수 있습니다. 이를 수행하려면 /etc/hosts를 편집하고 다음을 추가하십시오. 127.0.0.1bbs.it-home.org 이런 방식으로 이 컴퓨터에서 사이트에 액세스할 수 있습니다. 그러나 모든 사용자가 가상호스트에 접근하기 위해서는 공용 DNS 서버에 도메인 이름을 적용하고 설정해야 합니다.



성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.