FileZilla로 액세스하는 웹 서버 (Apache2)가 있습니다.
내 웹 서버에는 / var / www에 바인딩 된 dir / home / admin / www가 있습니다. FTP로 액세스 할 수 있습니다. 이것은 완벽하게 작동합니다!
그러나 웹 서버를 다시 시작할 때마다 바인딩을 반복해야합니다. 웹 서버에 해당 맵을 항상 바인딩해야한다고 말할 수 있습니까? 또한 매번 다시 모든 권한을 재설정해야합니다. 무엇을 잘못하고 있습니까?
답변
더 좋고 더 안전한 솔루션 (인터넷이 관리자 홈 폴더에 액세스하는 것이 불안해집니다!)은 /에 웹 루트 폴더를 만드는 것입니다
터미널 시간!
cd /
sudo mkdir /webroot
sudo groupadd webdev
sudo usermod -a -G webdev yourusername
sudo chown www-data:webdev /webroot/
이제 아파치가 아파치 설정의 맨 아래에있는 새 문서 루트 / webroot를 가리 킵니다. /etc/apache2/apache2.conf에서 찾을 수 있습니다.
sudo nano /etc/apache2/apache2.conf
CTRL-O로 저장, CTRL-X는 익숙하지 않은 경우 나노로 종료됩니다.
간단하게 교체 DocumentRoot /var/www/
와 함께/webroot/
이제 웹 파일을 webroot에 복사하십시오.
sudo /etc/init.d/apache2 reload
모든 구성이로드 된 상태에서 Apache가 다시 시작되었습니다.
이것은 루트에 apache2가 소유 한 webroot라는 디렉토리를 작성했으며, 그룹 소유자는 새 그룹 webdev이며, 이제 사용자가 구성원에 추가됩니다 (이는 그룹을 대체하지 않습니다!). FTP에서 파일을 편집 할 수 있습니다!
이것은 하나의 웹 사이트 아파치 서버를위한 매우 간단한 솔루션입니다. 여러 사이트를 실행하려는 경우 (예 : webroot에서 별도의 폴더 생성) 더 많은 작업이 필요합니다.
이것의 장점은 누군가가 취약점을 발견하면 홈 폴더가 아닌 웹 루트 폴더에 잠겨 있다는 것입니다. 또한 더 많은 사용자가 사이트를 수정하도록 허용해야하는 경우 다음을 사용하여 사용자를 webdev 그룹에 추가 할 수 있습니다.sudo usermod -a -G theirusername webdev
도움이 되었기를 바랍니다!
친절한 관계