웹마스터 팁

1. 개요

Windows 10 환경에서 XE 설치를 위한 Server 구축

(Windows Server OS에서의 XE 설치는 이 문서을 참고하세요)

 

2. 순서

 3~7

 iis 설치, php설치, mysql설치

 공유기환경 설정

 xe 설치시 권한 설정 및 짧은주소 관련

 

 8~10

 기타 - IP차단 관련, 서버이전 또는 도메인변경

 

3. IIS 설치

 3.1 제어판 > 프로그램 > 프로그램 및 기능 > Windows 기능 켜기/끄기 에서 인터넷 정보 서비스 체크

(특히 '보안'과 '응용 프로그램 개발 기능'의 CGI는 꼭 체크하셔야 좋습니다. 그냥 전부 체크^^;)

 

iis_1.jpg

 

 

 3.2 설치가 완료 된 경우 바탕화면에 "IIS(인터넷 정보 서비스) 관리자" 아이콘이 생성 됩니다. 이 관리자를 통해서 서버 중지/재시작, 짧은주소설정등의 리디렉션 기능실행, ip차단등 전반적인 서버관리를 할 수 있습니다.

 

 3.3 웹 플랫폼 설치 --- IIS(인터넷 정보 서비스) 관리자에 처음 들어가면 웹 플랫폼을 설치여부를 확인합니다. 이때 설치 하시거나 http://www.microsoft.com/web/downloads/platform.aspx 에서 설치하세요.

 

 3.4 특별한 사정이 없는 한 C:\inetpub\wwwroot 가 root폴더가 됩니다. 이 폴더를 변경하고 싶으면 아래와 같이 IIS관리자에서 Default Web Site > 고급 > 실제경로 를 원하는 폴더로 수정하면 됩니다.

 

iis_2.jpg

 

 3.5 확인 - http://127.0.0.1 이나 http://localhost 로 IIS가 제대로 설치되었는지 확인할 수 있습니다.

 

 3.6 여기까지의 상태에서는 방화벽에 의해 80포트가 막혀있어 외부에서 서버로 접속은 불가능합니다. 아래와 같이 방화벽에서 별도로 포트를 개방해줘야 합니다.

     - 제어판 > 시스템 및 보안 > Windows 방화벽 > 고급 설정

     - 인바운드 규칙 > World Wide Web 서비스(HTTP 트래픽 인) > 규칙사용 (HTTPS 아닙니다. 햇갈리시면 안됩니다)

     - 통신회사등에서 80포트등을 막은 경우 다른 우회 포트를 지정하시기 바랍니다. (바인딩에서 포트 지정을 할 수 있습니다)

 

iis_3.jpg

 

iis_4.jpg

 

 

4. PHP 설치

 

 4.1 http://windows.php.net/download/ 에서 PHP 소스 zip파일을 받습니다

     - 웹 플랫폼 상에서도 바로 PHP를 설치 할 수 있지만, 웹플렛폼에 올라와있는 v5.5.11은 XE에서 오류 발생하므로 다른 버전을 다운로드 합니다.

     - Windows용은 Non Thread Safe, OS 버전에 맞춰 x86(32bit) 또는 x64(64bit)를 받으시면 됩니다.

     - 적당한 곳에 압축을 풀어줍니다 (ex c:\PHP\v5.5\)

 

 4.2 IIS 관리자를 통해 웹 플랫폼 설치 관리자로 들어가 PHP Manager를 찾아 설치합니다.

php_1.jpg

 

php_2.jpg

 

 4.3 설치 완료 후 다시 IIS관리자에서 PHP Manager로 들어갑니다.

     - 아래와 같이 새버전 등록을 클릭 후 아까 압축을 풀었던 PHP 폴더의 php-cgi.exe를 지정해 줍니다.

     - PHP Manager에서는 php.ini파일 수정, phpinfo()를 바로 실행해 볼 수 있습니다.

    

php_3.jpg

 

5. Mysql 설치

 5.1 http://dev.mysql.com/downloads/windows/installer/ 에 들어가 하단의 Windows (x86, 32-bit), MSI Installer 를 다운 받습니다.

     - 크기가 큰 것은 전체 설치 파일이고, 작은 것은 웹설치 파일입니다. 아무것이나 실행해도 무방합니다.

     - 로그인 화면 하단의 No thanks, just start my download.를 누르면 로그인 없이 다운 가능합니다.

 

 5.2 설치 - 관리자 비밀번호 설정 외에는 next/excute 만 누르시면 됩니다.

 

masql_1.jpg

 

masql_2.jpg

 

 5.3 XE 스키마(database) 생성

     - Workbench이용 --- 작업표시줄의 MySQL Notifier > Configure Instance 또는 MySQL Workbench 실행

     - XE설치를 위해 왼쪽의 Schemas 탭에서 우클릭으로 xe sechema를 생성합니다.

     - 왼쪽의 Schemas 탭에서 우클릭으로 schema(database)를 create(생성)할 수 도 있고 drop(삭제)할 수도 있습니다.

     - 간단한 사항 이외는 phpMyAdmin을 이용하는 것이 편합니다.

 

masql_3.jpg

 

 5.4 DB user 추가

     - DB에 root로 접근하는 것은 보안상 좋지 않겠죠. 신규 ID를 생성하고 DB manager 정도로 권한을 부여하여 접속하는 것이 좋겠습니다.

     - 메뉴 Server > Users and Privileges > Add Account

     - Login > ID,PW 입력하고, Administrative Roles에서 권한을 설정합니다.

 

masql_4.jpg

 

 5.5 기타

     - DB 시작 및 중지,  Work Bench 실행 등은 작업표시줄의 MySQL Notifier 를 이용하면 편합니다.

mysql_6.jpg

 

     - 간단한 data 수정 등 --- 테이블 별로 우클릭 >  select rows을 통해 간단히 테이블 data를 확인할 수 있고, 각 field의 data 수정 후 apply를 클릭하면 간단히 data수정도 가능합니다.

 

masql_5.jpg

 

6. 공유기 환경

 6.1 공유기 포트 포워딩 - 서버가 공유기에 연결된 경우 포트포워딩, DMZ, 트윈IP등으로 해당 포트(http;80, https;443)를 개방해줘야 합니다. 이하 포트포워딩에 대한 링크를 참조하세요. 

     - 참조(iptime)

 

 6.2 ddns 설정 - 서버의 외부IP(공인IP)가 유동IP인 경우 공유기에서 지원하는 ddns기능을 통해 일정한 도메인 네임을 유지하도록 할 수 있습니다.

     - 참조(iptime)

 

 6.3 포트포워딩과 ddns가 잘 안되는 경우 - 수동으로 dns 서버 설정

     - 참조(iptime)

 

 6.4 서버가 2대 이상의 공유기에 연결된 경우 - 스위치 설정

     - 첫번째 공유기와 동일한 네트워크에 있어야 ddns/포트포워딩이 원할하게 작동합니다.

     - 참조(iptime)

 

7. XE 설치 - XE 폴더 권한 수정 및 짧은 주소 관련

 7.1 XE 설치

     - root폴더(ex. C:\inetpub\wwwroot) 에 xe core를 복사합니다 (iis 설치시 인덱스 파일인 iisstart.html은 삭제)

     - 만약 xe폴더 통째로 복사(C:\inetpub\wwwroot\xe와 같이)하면 http://localhost/xe/ 로 접속이 되므로, 아래와 같이 xe 폴더의 내용만 C:\inetpub\wwwroot에 복사하여 http://localhost 로 접속할 수 있습니다

install.jpg

 

 7.2 XE 설치시 폴더 권한 수정

     - http://localhost에 접속하여 설치를 시작하면 권한 관리에 관한 오류메세지가 뜹니다.

     - (root)\files 폴더만 생성하고 (root)\files폴더의 권한만 수정하면 됩니다.

     -  files 폴더 우클릭 > 속성 > 보안 탭 > 편집

authority_1.jpg

 

    - 아래와 같이 Users의 사용 권한을 모든 권한으로 설정 (IUSR의 사용권한으로 해도 됩니다. Users ⊃ IUSR)

authority_2.jpg

 

 7.3 짧은 주소 설정

 

 7.3.1 IIS 관리자 > 웹 플렛폼에서 URL 재작성 설치 (또는 download.microsoft.com/download/1/2/8/128E2E22-C1B9-44A4-BE2A-5859ED1D4592/rewrite_amd64_ko-KR.msi 에서 직접 다운로드 후 설치해도 됩니다)

 

 7.3.2 IIS 관리자에서 해당 사이트(ex. Default Web Site) 클릭 후  URL 재작성 > 인바운드 규칙 > 규칙 가져오기 > XE root폴더의 .htaccess파일 > 적용

 

rewrite_2.jpg

 

7.3.3 XE 관리자 페이지에서 설정 > 일반 > 고급 > 짧은 주소 사용 체크

 

8. IIS관리자에서 IP차단

 8.1 IIS 관리자에서 해당 사이트(ex. Default Web Site) 클릭 후  URL 재작성

     - 작업 탭에서 규칙 추가 > 요청 차단

 

restrict_1.jpg

 

 8.2 URI, User-Agent, 쿼리문자열, 리퍼러, 호스트 헤더 별로 차단 설정 가능

restrict_2.jpg

 

 

9. 서버 이전 방법

 9.1 구 서버 DB백업 --- MySQL Workbench > Server > Data Export

     - export to dump project folder ; 테이블 별 폴더 생성하여 백업

     - export to self-contained file ; 1파일에 모두 백업

     - 백업할 schema 선택 > Start Export

 

moveserver_1.jpg

 

 9.2 새로운 서버에 XE core, addon, layout skin등의 파일 복사

      - core를 새로 설치하는 경우에는 구서버의 (root)/files/site_design, (root)/files/attach의 파일만 복사

 

 9.3 새로운 서버에 DB복원(MySQL Workbench > Server > Data Import)

 

 9.4 xe_site 테이블에서 새로운 url로 수정

 

moveserver_2.jpg

 

 9.5 (root)/files/config/db.config.php 파일의 db정보 및 default url 수정

 

 9.6. 관리자 페이지 - 캐시 파일 재생성

 

 9.7. 게시판의 본문 삽입으로 첨부된 이미지 주소를 새로운 도메인에 맞게 수정(절대경로로 지정되어 있어 바뀐 URL로 수정해 줘야 합니다)

 

     - Workbench > edit > preferences > SQL queries > "safe updates" 해제 (safe모드가 해제되어야 아래 쿼리가 실행 가능합니다)

 

moveserver_3.jpg

 

     - 쿼리 실행 ; UPDATE xe_documents SET content = REPLACE(content, '변경전 url', '변경후 url');

     - 쿼리 실행 ; UPDATE xe_comments SET content = REPLACE(content, '변경전 url', '변경후 url');

 

moveserver_4.jpg

 

10. 도메인 변경 (사설IP, localhost 및 구도메인 에서 공인IP, 신규 도메인 등으로 기본 URL 변경)

 10.1 (root)\files\config\db.config.php 에서 'default_url' 을 수정
      - (ex. 'default_url' => 'http://aaa.com/' 또는 'default_url' => 'http://000.000.000.000/')
      - 다중도메인을 쓰는 경우 'default_url' => 'http://'.$_SERVER["HTTP_HOST"].'/'

 

 10.2 DB에 접속 > xe_sites 테이블에서 변경된 도메인으로 수정

moveserver_2.jpg

 

 10.3 서버이전에서와 같이 document, comment table의 첨부파일 절대 주소 수정

     - 쿼리 실행 ; UPDATE xe_documents SET content = REPLACE(content, '변경전 url', '변경후 url');

     - 쿼리 실행 ; UPDATE xe_comments SET content = REPLACE(content, '변경전 url', '변경후 url');

 

moveserver_4.jpg

 

제목 글쓴이 날짜
검색엔진 네이버 사이트 순위 SEO 검색엔진 최적화 작업해도 안 올라간다면.. [1] file CJM 2022.05.16
불법광고 댓글 greentown 2021.05.18
XE 1.4에서 HTML5 에디터 사용하기 (Flash 없는) [3] file Toby 2021.02.24
content 위젯에서 태그로 글 뽑기 날아올라 2021.02.07
XE를 다른디렉토리에 설치후 리다이렉트하기 디자인플렉스 2020.04.24
커뮤니션 쪽지 보내기 기능을 모바일 에서 실행시 로그인 풀림 현상 인천한량 2020.04.14
AI 개발에 적합한 5가지 프로그래밍 언어 ppumweb 2020.01.06
ZB게시판에 구글광고 달수 없나요? [2] 손주사랑 2019.11.23
대부분 쉬운설치로 인해 홈페이지 빈 페이지가 뜨는 에러는.. CJM 2019.10.24
코드 이미지 생성해주는 사이트 [2] file reactux 2019.10.06
xe 기본회원가입품 연락처항목 공백&숫자 유효성검사 질문입니다. 해운거사2 2019.08.25
회원가입품 연락처항목 공백잇을시 질문입니다. 해운거사2 2019.08.16
관리자 아이디/비번을 잃어버렸을때, 관리자페이지 접속을 못할 때 TIP [1] file 플레이웹 2019.08.13
VSCODE에서 PRETTIER-PHP 사용하기 (중급자용) reactux 2019.07.29
관리자페이지의 회원목록에서 타회원들의 비밀번호 찾기 질문/답변 수정 가능하도록 하려면.. sejin7940 2019.07.03
스케치북5 게시판 사용자정의에 색상 적용하기 file 아데나 2019.05.31
로그인 실패시 실패내역 쪽지와 메일 발송 되는걸 발송 안 되게 하려면.. sejin7940 2019.05.21
1.11.3 업로드 패치 이후 업로드 오류 관련 우소푸 2019.04.21
XE이전 작업순서 elancer 2019.03.28
무료이미지 다운 받을 수 있는 곳 elancer 2019.03.19