먼저 프로젝트용 디렉터리를 만듭니다. 예를 들어, php:
라는 디렉토리를 생성해 보겠습니다.sudo mkdir /var/www/html/php
프로젝트 디렉토리에 index.php 파일을 생성하세요:
echo "디렉토리 권한 설정
Apache가 디렉터리에 액세스할 수 있도록 적절한 권한을 설정합니다.
sudo chown -R www-data:www-data /var/www/html/php sudo chmod -R 755 /var/www/html/phpsudo chown -R www-data:www-data /var/www/html/php 명령은 다음 작업을 수행합니다.
-R: 이 옵션은 작업이 재귀적으로 수행되어야 함을 나타냅니다. 즉, 지정된 디렉터리뿐만 아니라 해당 디렉터리의 모든 하위 디렉터리와 파일에서도 수행됩니다.
www-data:www-data: 파일의 새 소유자가 될 사용자와 그룹이 모두 www-data임을 지정합니다. Apache 및 Nginx와 같은 웹 서버의 기본 사용자 역할을 하는 Linux 시스템의 일반 사용자 및 그룹입니다.
/var/www/php: 속성이 변경되는 디렉터리의 경로입니다.
sudo chmod -R 755 /var/www/html/php 명령은 다음 작업을 수행합니다.
755: 이것은 권한 모드입니다:
첫 번째 숫자(7)는 파일(또는 디렉터리) 소유자에게 읽기(4), 쓰기(2) 및 실행(1) 권한을 부여하여 총 7가지 권한을 부여합니다.
두 번째 숫자(5)는 그룹에 읽기(4) 및 실행(1) 권한을 부여하지만 쓰기 권한은 부여하지 않으므로 총 5개입니다.
세 번째 숫자(5)는 다른 사용자에게 읽기(4) 및 실행(1) 권한을 부여하지만 쓰기 권한은 부여하지 않습니다.
요약하자면, 이 명령은 /var/www/html/php 내의 모든 파일과 디렉터리에 대한 권한을 변경하여 소유자가 모든 권한(읽기, 쓰기, 실행)을 가질 수 있게 하고 그룹과 다른 사용자는 읽기만 할 수 있도록 합니다. 권한을 실행합니다. 이는 서버가 보안을 손상시키지 않고 필요한 파일에 액세스할 수 있도록 하기 위해 웹 서버 환경에서 일반적입니다.
가상 호스트 구성 파일 생성
가상 호스트에 대한 새 구성 파일을 만듭니다. 파일 이름은 PHP 프로젝트와 동일해야 합니다:
sudo your_editor /etc/apache2/sites-available/php.conf가상 호스트 구성 추가
파일에 다음 구성을 추가합니다.
ServerAdmin webmaster@localhost ServerName php.info DocumentRoot /var/www/html/php AllowOverride All Require all granted ErrorLog ${APACHE_LOG_DIR}/php_error.log CustomLog ${APACHE_LOG_DIR}/php_access.log combined 코드의 각 부분을 분석해 보겠습니다.
- 이것은 HTTP의 기본 포트인 포트 80에서 수신 대기하는 가상 호스트에 대한 구성 블록의 시작입니다. 별표(*)는 가상 호스트가 모든 IP 주소의 연결을 허용함을 나타냅니다.
ServerAdmin webmaster@localhost
- 서버 관리자의 이메일 주소를 정의합니다. 이 이메일 주소는 오류 메시지나 사용자가 관리자에게 문의해야 할 때 사용될 수 있습니다.
서버 이름 php.info
- 이 설정이 적용되는 서버의 이름을 지정합니다. 이 경우 가상 호스트는 php.info 요청에 응답합니다. 이 이름이 서버의 IP(일반적으로 /etc/hosts 파일 또는 DNS에 구성됨)로 올바르게 확인되는 것이 중요합니다.
DocumentRoot /var/www/html/php
- 누군가가 ServerName(이 경우 php.info)에 액세스할 때 제공될 파일이 포함된 디렉터리를 정의합니다. 이 예에서 파일은 /var/www/html/php.
에 있습니다.
- 이 블록은 표시된 디렉터리에 대한 특정 설정을 지정합니다. 이 블록 내의 설정은 해당 특정 디렉터리에 대한 Apache의 동작에 영향을 미칩니다.
모두 재정의 허용
모두 부여 필요
이 가상 호스트에 대한 Apache 오류 로그 파일의 경로를 지정합니다. ${APACHE_LOG_DIR}은 일반적으로 기본 Apache 구성 파일에 설정되는 변수로, 로그가 저장되는 디렉터리를 가리킵니다. 여기서 해당 가상 호스트와 관련된 오류는 php_error.log 파일에 기록됩니다.
CustomLog ${APACHE_LOG_DIR}/php_access.log 결합
이 가상 호스트에 대한 Apache 액세스 로그 파일의 경로를 정의합니다. ErrorLog와 마찬가지로 이 역시 ${APACHE_LOG_DIR} 변수를 사용합니다. 결합된 형식은 클라이언트의 IP 주소, 요청 시간, HTTP 메서드, 요청된 URL, 상태 코드 및 사용자 에이전트를 포함하여 요청에 대한 정보를 기록합니다.
다음 명령을 사용하여 새 가상 호스트를 활성화합니다.
sudo a2ensite php.conf
.htaccess 또는 URL 재작성을 사용해야 하는 경우 Apache 재작성 모듈을 활성화하십시오:
sudo a2enmod rewrite
정의한 서버 이름(php.info)을 사용하여 프로젝트에 액세스하려면 /etc/hosts 파일에 다음 항목을 추가하세요.
sudo your_editor /etc/hosts
파일 끝에 다음 줄을 추가합니다.
127.0.0.1 php.info
변경 사항을 적용하려면 Apache를 다시 시작하세요.
sudo systemctl restart apache2
이제 http://php.info를 입력하여 브라우저에서 프로젝트에 액세스할 수 있습니다.
부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.
Copyright© 2022 湘ICP备2022001581号-3