테스트 서버 설정

테스트 서버 설정

저는 홈 네트워크에 테스트 서버를 설치하여 로컬에서 웹사이트를 개발하고 문제가 해결되면 웹사이트를 업데이트하고 싶었습니다. 저는 이번 여름에 PHP를 배우기 시작했고(저는 제가 다니고 있는 대학의 학생입니다) 직장에서 Subversion 저장소에 웹사이트를 설정했습니다. 그런 다음 실제 사이트와 다른 개발 사이트에서 작업을 수행합니다. 라이브 사이트를 업데이트할 때가 되면 내 상사는 저장소 데이터를 라이브 사이트에 "복사"합니다(확실하지는 않다고 가정합니다). 내 상사가 코드의 링크 등을 변경할 필요가 없는 것 같습니다. 내가 "그냥 작동한다"고 생각하는 이유는 사이트에서 작업하는 모든 사람이 다른 URL을 사용하여 개발 사이트에 액세스하기 때문입니다. 제 질문은: 어떻게 하면 동일한(또는 유사한) 서버 설정을 달성할 수 있습니까? 궁금한 점이 있으시면 LAMP 서버와 함께 Ubuntu 9.04 데스크탑 에디션을 (올바르게 설치되었다고 가정합니다) 사용하고 있습니다.

답변1

저장소에서 최신 업데이트를 검색한 다음 일부 데이터를 바꾸는 스크립트가 "뒤에" 있다고 가정합니다. 예를 들어 개발 사이트가 dev.net이고 프로덕션 사이트가 prod.net인 경우 스크립트는 dev.net의 모든 항목을 prod.net으로 대체하고 스크립트는 데이터베이스에 대한 연결이 다음을 가리키는지 확인해야 합니다. 올바른 데이터베이스 서버.

답변2

웹사이트 호스팅에는 아파치를 사용하세요. Apache, mysql, php의 항목이 누락된 경우 apt-get 또는 synaptic을 사용하여 설치할 수 있습니다. 절대 링크 대신 상대 링크를 사용하기 때문에 웹 사이트는 복사만으로 작동합니다.

예를 들어 폴더 a 내의 폴더 b에 연결하려는 경우 두 가지 방법이 있습니다.

<a href="b/other.php"> Link </a>

그리고

<a href="http://localhost/a/b/other.php"> Link </a>

첫 번째는 상대 링크이고 두 번째는 절대 링크입니다. 상대링크만을 사용하여 사이트를 준비하면 복사-붙여넣기로 사이트가 문제없이 작동됩니다.

답변3

그가 링크를 변경할 필요가 없는 이유는 아마도 애플리케이션의 모든 것이 상대 URL을 사용하고 있기 때문일 것입니다. 따라서 페이지 링크는 "/services.html"이 아닌 "/services.html"이 됩니다.http://www.mydomain.com/services.html".

라이브 사이트도 실제로 저장소에 있을 수 있습니다. 이 경우 상사는 dev 저장소에서 prod 저장소로 최신 버전을 다운로드한 다음 prod 저장소를 커밋하는 스크립트를 가지고 있을 수 있습니다.

관련 정보