본문으로 건너뛰기

"windows" 태그로 연결된 24개 게시물개의 게시물이 있습니다.

모든 태그 보기

로컬 웹서버 돌리기 - 5. CURL 설정

· 약 1분

4. OpenSSL 설정에서 이어집니다.

리눅스에서는 Curl 모듈을 확장만 하면 사용이 가능하지만 윈도우 로컬 서버에서는 사용이 되지 않는다. 해결해보자.

php.ini에서 php_curl 모듈의 주석을 해제한다. image from hexo

dll 복사

총 4 개의 dll 파일을 C:\Windows\system32 폴더로 복사해야한다.

  • php7\ libeay32.dll
  • php7\ libssh2.dll
  • php7\ ssleay32.dll
  • php7\ext\ php_curl.dll

image from hexo

이제 php curl command 를 사용할 수 있다.

로컬 웹서버 돌리기 - 4. HTTPS OpenSSL 설정

· 약 3분

3. Virtual Host 설정에서 이어집니다. 로컬에서 HTTPS 통신으로 프로젝트에 접근하시고 싶지 않으시다면 3 장으로 웹서버 구동은 완료됩니다.

모듈 활성화

Apache24\conf\httpd.conf에서 ssl_module 과 socache_shmcb_module 의 주석을 해제한다. image from hexo

설정 활성화

Include conf/extra/httpd-ssl.conf의 주석을 해제한다. image from hexo

SSL 설정 변경

디렉토리 생성

Apache24\conf 경로에서 ssl폴더를 만든 뒤 conf/openssl.cnf 파일을 ssl 폴더로 복사한다.

키 생성

ssl 폴더로 들어와 cmd 창을 연 뒤 키를 생성한다.

$ openssl genrsa -out domain.key 1024
$ openssl req -new -config openssl.cnf -days 365 -key domain.key -out domain.csr

위 명령어를 입력하면 입력 폼 형식이 나오는데, 주제에 맞게 입력하면 된다. (KR, Seoul 등)

생성된 domain.key, domain.csr 파일을 확인한 뒤 아래 명령어를 입력한다.

$ openssl x509 -in domain.csr -out domain.crt -req -signkey domain.key -days 365

완성된 파일 구조의 형태는 다음과 같아야한다. image from hexo

SSL 연동

httpd-ssl.conf를 열어 키 파일을 연동해준다. image from hexo 그 밖에 다른 경로로 연결된 설정이 있다면 바로 잡아주면 된다.

HTTPS 접속

Apache restart 후 접속해보자. image from hexo

여담

오류 발생시

오류가 발생할 경우 Apache24\logs\error.log 파일을 확인해가며 진행하면 된다.

Virtual Host 설정

Virtual Host 에 직접 key 파일을 지정할 수도 있다.

<VirtualHost *:443>
SSLEngine on
SSLCertificateFile "d:/Apache24/conf/ssl/domain.crt"
SSLCertificateKeyFile "d:/Apache24/conf/ssl/domain.key"

DocumentRoot "D:/workspace/test"
ServerName local.test.com
</VirtualHost>

👏👏👏 이로서 로컬 HTTPS 서버를 가지게 되었습니다. 다음 장에서는 서버 통신을 위해 CURL 설정을 해보겠습니다.

Windows10에서 hosts 파일 저장이 안될 때

· 약 2분

실컷 hosts 파일을 변경했는데 다시 들어가보니 원래대로거나, 권한이 없다고 아예 저장이 안 되는 경우가 있다.

백신

백신에 따라 hosts 파일을 보호하기 때문에 수정을 제한될 수 있다. 잠시 백신을 사용안함 상태로 변경하자.

Windows10

Windows10 은 기본적으로 hosts 파일의 수정이 제한되어있다.

바탕화면 우클릭 > 새로만들기 > 바로가기를 실행한다. image from hexo

항목 위치 입력에 host 파일 경로를 입력해 바로가기를 만든다.

# 아래 내용을 항목 위치 입력에 넣어 바로가기 생성
C:\Windows\System32\notepad.exe C:\windows\system32\drivers\etc\hosts

image from hexo

관리자 권한으로 실행한다. image from hexo

이제 hosts 파일을 수정하면 된다.

로컬 웹서버 돌리기 - 3. Virtual Host 설정

· 약 2분

2. PHP 설치에서 이어집니다.

Apache와 PHP의 연동은 끝났지만 사용하고 싶은 프로젝트를 연동하는 작업을 해주어야 원하는 폴더를 웹으로 볼 수 있을 것이다.

httpd.conf를 열어 맨 아래쪽으로 내리면 있는 httpd-vhost.conf의 주석을 해제한다. image from hexo

디렉토리 접근 권한 변경

httpd.conf에서 모든 디렉토리 접근권한은 기본적으로 차단되어있기에 변경해야한다.

<Directory />
Options FollowSymLinks
AllowOverride none
Order allow,deny
Allow from all
</Directory>

image from hexo

Virtual Host 설정

./conf/extra/httpd-vhosts.conf 파일을 연다. 임시로 있는 VirtualHost를 지워주고 아래처럼 내가 사용할 프로젝트를 입력한다. image from hexo DocumentRoot에는 프로젝트 경로, ServerName은 URL로 접근할 경로를 적는다.

Host 파일 수정

C:\Windows\system32\drivers\etc\hosts 파일을 관리자 권한으로 열고 주소를 추가한다.

127.0.0.1 local.test.com

저장 불가일시

잠시 hosts 파일을 수정가능하게 손을 보고 다시 오자.

연동 확인

Apache restart 후에 확인한다. image from hexo

👏👏👏 이로서 기본 웹서버 설치는 마무리 됬습니다. 다음 장에서는 HTTPS 환경을 위해 OpenSSL 설정을 해보겠습니다.

로컬 웹서버 돌리기 - 2. PHP 설치

· 약 3분

1. Apache 설치에서 이어집니다.

여기서 Apache 의 VC 버전에 맞는 Thread Safe 타입의 PHP 를 다운받으면 된다. image from hexo

압축을 풀고 Apache 와 같은 폴더에 php7 로 변경해 저장한다. (D:\php7) 폴더 안의 php.ini-developmentphp.ini로 변경한다.

모듈 활성화

사용할 모듈의 세미콜론을 지워주면 된다. image from hexo curl, mysqli, gettext, mbstring, openssl, pdomysql는 기본으로 지워주고, 나머진 나중에 지워도 된다.

설정 변경

php.ini 파일의 설정을 변경한다.

시간대 설정

date.timezone 을 추가한다. image from hexo

short_open_tag 설정

<?php<? 로도 사용할 수 있게 해주는 short_open_tag 옵션을 켠다. image from hexo

에러 리포팅 설정

에러 발생시 서버에 오류가 노출되기에 에러 노출 단계를 낮춰주자. image from hexo

error_reporting = E_ALL & ~E_NOTICE & ~E_DEPRECATED & ~E_USER_DEPRECATED

모든오류 & not runtime notice & not deprecated & not user deprecated 의 상태이면 오류를 출력한다.

확장 모듈 경로 설정

C:\php에 php 설치를 하지 않았을 경우 확장 모듈 경로를 변경해줘야한다.

extension_dir = "D:\php7\ext"

Apache에 PHP 연동

httpd.conf 파일을 열고 아래 구문을 모두 추가한다.

# 인덱스 파일 설정
DirectoryIndex index.php index.html index.htm
# 모듈 연동 (php 설치 경로를 적는다)
LoadModule php7_module "D:/php7/php7apache2_4.dll"
# 핸들러 및 타입 연동
AddHandler application/x-httpd-php .php
AddType application/x-httpd-php .php .html
# PHP INI 경로 설정
PHPIniDir "D:/php7"

image from hexo

연동 확인

D:\Apache24\htdocs 경로의 index.html 파일을 index.php 로 변경 후 저장한다.

index.php
<?
phpinfo();
?>

image from hexo

여담

php5에서 php7로 오는 중 큰 변경점이 몇 가지 있다.

  1. 속도가 php5보다 2배 향상
  2. mysql 함수 사용 불가 (Mysqli로 대체)
  3. 기본값 연산자 사용 가능 (A ?? B ?? C 로 사용가능)

👏👏👏 다음 장에서는 실제 프로젝트를 웹서버에 돌리기 위한 Virtual Host 설정을 해보겠습니다.

로컬 웹서버 돌리기 - 1. Apache 설치

· 약 2분

APM_setup 은 좋은 선택이지만, PHP 버전업에 있어서 충돌이 너무 심하고 Nginx 도 좋은 선택이지만 나중에 정리하기로 하자.

여기에서 운영체제에 맞는 버전을 다운로드 한다. image from hexo VC14, VC11 은 PHP 버전과도 관련있으니 다운받으면서 확인해 놓는다. 압축을 풀면 Apache24 폴더가 생기는데 이 폴더를 원하는 경로로 옮겨준다. (D:\Apache24)

경로 변경

C:\Apache24 에 압축을 풀었다면 3 번으로 넘어가자

Apache24/conf/httpd.conf를 열어 경로를 변경한다. image from hexo 초기 설치 상태에서 C:\로 검색시 4 개정도 찾아지는데 모두 변경해주면 된다.

httpd 서비스 등록

cmd 를 관리자 권한으로 실행 후 아래 명령어를 입력해준다.

  • Windows10 : 시작메뉴 우클릭 > 명령 프롬프트(관리자) 메뉴
  • Windows7 : 시작메뉴 > 모든 프로그램 > 보조 프로그램 > 명령 프롬프트 우클릭 > 관리자 권한으로 실행
$ httpd.exe -k install

image from hexo

httpd 구동

Apache24\bin\ApacheMonitor.exe 실행한 뒤 작업표시줄에서 Apache 아이콘 클릭 후 서비스를 시작한다. image from hexo

localhost 접근

image from hexo 👏👏👏 다음 장에서는 PHP 를 설치해 Apache 와 연동을 해보겠습니다.

Windows10 업데이트 후 80포트를 사용할 수 없을 때

· 약 1분

Windows10 Anniversary 업데이트 후에 갑자기 80 포트 또는 Apache 서비스를 사용할 수 없는 경우가 있다.

WWW Publishing service 가 80 포트를 사용해서 충돌이 발생했다.

해결

services.msc 를 실행해 *WWW Publishing 서비스사용안함으로 체크한 뒤 재부팅해주면 된다. (로컬 웹을 돌릴 정도면 서비스창을 띄울 수 있을 것이라 믿는다) image from hexo

Windows10 Anniversary 업데이트 후 작업표시줄 폰트가 검게 보일 때

· 약 1분

Anniversary 업데이트 후 작업표시줄(taskbar)의 글꼴이 회색? 검정색? 이 되어 보이지가 않는 경우가 있다. image from hexo 이 부분과 날짜 표시 부분이 검게 변한다. 프로그램 제목이 안보이면 여간 불편한게 아니니 직접 변경해보자.

업데이트시 theme 파일이 충돌되었다.

해결

바탕화면 우클릭 > 개인설정 > 테마 > 테마설정에 들어간다. image from hexo

테마를 Windows 기본값 테마로 바꾼 후 내 테마들을 우클릭 해 삭제해준다. image from hexo

그리고 다시 내 테마를 커스터마이징 하면 된다!

Windows10 Onedrive 바로가기 해제

· 약 1분

Windows10 을 쓰다가 어느순간 보면 탐색기에서 Onedrive 메뉴가 생긴 것을 볼 수 있다. image from hexo

심지어 Windows10 Anniversary Update 가 되어있다면 모르는 사이에 동기화가 연결되어 있을 수도 있다.

동기화는 리소스를 잡아먹고 개인컴퓨터가 아닌 곳에서는 접근하면 안되니 여간 거슬리는 게 아니다.

설정에 들어가도 해제옵션이 없고, MS 도움말에는 기본기능이라 해제가 불가능하다고 나온다.

없애보자.

  1. 삭제프로그램을 다운받는다.
  2. 압축을 풀고 uninstaller.cmd관리자권한으로 실행한다.

여담

오픈소스라 믿고 사용해도 된다.

Windows10 바탕화면 변경 및 사진적용이 안될 때

· 약 2분

Windows10에서 사진파일로 바탕화면 변경을 해도 적용이 안될 때가 있다. 오로지 단색으로만 화면을 변경할 수 있는데 해결해보자

제어판 이동

시작 > 우클릭 > 제어판 image from hexo

접근성 센터 이동

보기 기준에서 작은 아이콘 보기로 변경하면 접근성 센터 메뉴가 보인다. image from hexo

컴퓨터를 보기 쉽게 설정

컴퓨터를 보기 쉽게 설정 메뉴로 들어간다. image from hexo

배경 이미지 제거 옵션 해제

화면의 항목을 읽기 쉽도록 표시 영역에서 **배경 이미지 제거(사용할 수 있을 경우)**의 옵션을 해제해준다. image from hexo

바탕화면 이미지 변경

바탕화면 > 우클릭 > 개인설정에서 바탕화면을 변경해준다.