본문 바로가기

class "Think"/"PHP On Azure"

[PHP on Azure - 초급 - 5] XpressEngine on Azure


저번 강의는 워드프레스를 사용해서 쉽게 Azure에 웹사이트를 배포하는 방법을 배웠었습니다. 이번 강의에서는 국내에서 가장 많이 사용되고 있는 CMS툴인 XpressEngine을 Azure에 배포하고 사용하는 방법을 알아보도록 하겠습니다.

Azure의 웹갤러리의 Microsoft Web Platform Installer의 웹 갤러리에는 XpressEngine이 등록 되어있어서 쉽게 설치가 가능한데, 아직 Azure의 웹 갤러리에는 등록이 되어있지않은 상태입니다. 추후에 등록이 된다면 이번 강의처럼 설치할 필요는 없지만, 웹갤러리에 없는 오픈소스 어플리케이션을 사용하고 싶으실때는 이번에 강의할 방법으로 진행을 하면 되기 때문에 도움이 되실거라 생각이 됩니다.

강의를 시작하도록 하겠습니다.


 

먼저 Azure의 '관리 포털'에 접속한 후, 가장 먼저 웹사이트 서비스를 생성합니다. 위 화면처럼 'Create With Database' 를 선택하셔서 진행합니다.


선택을 하게되면 위와같은 화면이 나타납니다. 여기서 Database 부분의 항목을 Create a new MySQL database 로 선택하셔서 진행해야 합니다.


지금까지 제가 쓴 강의를 잘 따라오셨다면 여기서 문제가 발생합니다. Azure 평가판의 계정으로는 MySQL 데이터베이스를 1개까지 밖에 생성할 수 없기 때문에, 진행이 되지 않습니다. 이전에 WordPress에서 만들었던 데이터베이스를 삭제한 후 진행하면 됩니다. 삭제하는 방법은 다음과 같습니다.


관리포털 메인화면에서 전에 만들었던 WordPress 인스턴스를 클릭합니다. 그럼 하단에 위 화면처럼 Delete 버튼이 위치하는것을 확인할 수 있습니다. 클릭하면 다음과 같이 확인창이 나타납니다


링크되어있는 데이터베이스의 현황이 나타납니다. 이걸 삭제해야하므로 체크박스를 클릭하고 확인버튼을 클릭하면 인스턴스와 데이터베이스의 삭제가 완료됩니다.


그리고 다시 웹사이트를 만들기 위한 절차를 진행하시면 위 화면처럼 체크박스를 클릭할 수 있게 됩니다. 클릭후 생성을 완료하도록 하겠습니다. (웹사이트 서비스 생성 도중의 중간결과는 저장되지 않기때문에 처음부터 다시 진행하셔야 합니다)


2-3분정도 웹사이트 서비스 셋팅에 시간이 소요됩니다. 완료가 되면 하단 노티바에 완료가 되었다는 메시지가 출력됩니다.


이제 생성한 웹사이트에 XE를 업로드 해야합니다. 몇가지 방법이 있을수 있는데, XE의 파일이 많은 관계로 여기서는 FTP를 통한 업로드를 진행하도록 하겠습니다.

생성한 웹사이트 대쉬보드로 들어간 뒤에(메인화면에서 이름을 클릭), 상단의 구름에 번개표시 난 아이콘을 클릭한 후, 중간쯤에 있는 Set up deployment credentials 링크를 클릭합니다


여기서 FTP에 접속할 사용자 계정을 셋팅합니다. 여기서 지정한 정보는 추후 새로운 웹사이트를 추가하더라도 동일하게 사용됩니다. 적당한 아이디와 비밀번호를 입력합니다. 비밀번호는 숫자+영문이 혼합되어야 합니다.


셋팅이 완료되면 하단의 노티바에 위와같은 메시지가 나타납니다.


이제 ftp 클라이언트 프로그램을 통해 업로드를 해보도록 하겠습니다. 먼저 대쉬보드에서 ftp 주소와 user id 를 기억해두도록 합니다. 페이지 중간부분에 FTP Hostname이 ftp 주소를 의미하고, Deployment user가 id를 의미합니다


ftp 프로그램은 아무거나 사용해도 됩니다. 위와같이 접속자 설정창에서 아까 기억해둔 HostName과 UserID를 입력하고, 위에서 설정한 password를 입력하여 접속합니다.


접속하면 처음에 폴더 2개가 보입니다. site/wwwroot 폴더로 이동하면 위 화면처럼 하나의 기본파일이 나타납니다. 이곳에 XE를 업로드하면 됩니다


http://xpressengine.com 으로 이동해 XE core를 다운로드 받습니다.


다운로드 받은 파일을 여러분의 컴퓨터에서 압축을 풀고, 압축푼 파일을 업로드 합니다. 주의할 점은 index.php파일이 /site/wwwroot/ 의 경로에 올라가도록 업로드하셔야합니다. 즉 여러분 웹사이트의 최상위경로가 XE의 메인페이지가 되는 것입니다. (서버가 북미쪽에 있다보니 업로드에 시간이 많이 소요됩니다. 추후 서비스가 정식 런칭되고 아시아쪽에 데이터센터가 정상 가동되면 빨라질 것입니다)


업로드가 완료되면 인터넷 브라우저를 사용해서 여러분의 웹사이트로 접근합니다. 웹URL 확인방법은 관리포털의 해당 웹사이트 대쉬보드에서 확인할 수 있습니다.

XE의 설치 과정이 진행됩니다. 한국어를 선택후 다음버튼으로 진행합니다.


설치조건이 나타납니다. 여러 기능들을 모두 지원하기때문에 문제없이 사용이 가능합니다. 다음 버튼을 클릭합니다.


DB를 선택해야합니다. mysql DB를 만들었기 때문에 mysql 라디오버튼을 클릭하고 다음버튼을 클릭합니다.


이제 DB정보를 입력합니다. 아까 생성한 mysql의 DB정보 확인방법을 설명해 드리겠습니다.


다시 Azure의 대쉬보드로 돌아와서, Quick Glance 부분에 보면 View Connection Strings 링크가 보입니다. 클릭합니다


클릭하면 위 화면처럼 DB접속에 필요한 여러 정보들이 나타납니다. 기억해두셔서 이걸  XE설치화면 정보에 입력하면 됩니다.


위의 항목을 각 input 박스에 알맞게 입력합니다. 어떤값이 어디에 들어가야하는지 잘 모르시겠다면 위 화면을 참고하셔서 입력하세요


여기선 시간대 설정과 짧은 주소 사용을 할건지 묻고있습니다. 시간대는 한국이라면 GMT +09로 설정하시면 되고, 짧은주소는 Rewrite 모듈이 동작해야하는데 Azure의 IIS에는 관련설정이 안되어있는것으로 알고있습니다. 수동으로 설정하는 방법이 있다고하는데, 일단 지원하지 않으므로 체크박스는 해제합니다.


마지막으로 관리자계정 설정 정보를 입력합니다. 


마지막 단계까지 설치가 완료되면 위 화면과 같이 Welcome 페이지가 나타납니다. 관리자 페이지를 들어가서 설치가 잘되었나 한번더 확인해보도록 하겠습니다. 주소 URL창 마지막에 /admin 을 붙히면 됩니다. (저같은 경우엔 http://xpressenginetest1.azurewebsites.net/admin 이 되겠네요)


위 화면처럼 정상 작동하는것을 확인할 수 있습니다.



지금까지 XpressEngine을 Azure 위에 설치하는 방법을 따라해보았습니다. XE뿐만아니라 다양한 PHP 오픈소스 어플리케이션 들을 지금과 같은 방법을 통해 Azure에 설치할 수 있습니다(경우에 따라 오픈소스에서 요구하는 module을 지원하지 않는 경우 정상적으로 작동하지 않을 수 있습니다). 

다음 강의에서는 대표적인 SVN인 git을 활용하여 php-MySQL 웹사이트를 배포하는 방법에 대해 알아보도록 하겠습니다.


감사합니다