메뉴 건너뛰기

enjoyTools.net

피씨방스튜디오 만들기 #1/4 - vscode 포터블 설정

피씨방스튜디오 만들기 #2/4 - MariaDB, HeidiSQL 준비

피씨방스튜디오 만들기 #3/4 - NginX, PHP 준비

피씨방스튜디오 만들기 #4/4 - 취합 및 마무리

 

 

Visual Studio Code 윈도우용과 NginX, PHP, MySQL 등을 피씨방에서도 설치 없이, 압축만 풀어서 바로 쓸 수 있게 하기 위한 삽질.

주로 배치파일을 활용하며, 일부는 MSys Shell 에서 파일을 가져다 쓸 것임.

준비할 파일들은 64비트용으로 할 것임.

 

0. 폴더는 아래와 같이 구성. 앞으로 여기에 필요한 폴더들을 추가해 나갈 것임.

 * 루트 폴더

 - tools : 프로그램들이 들어갈 폴더

  ** vscode : 비주얼스튜디오코드

  ** heidisql : 하이디SQL은 MySQL 클라이언트

  ** servers

   -- mariadb : MySQL 대신, 마리아DB 사용

   -- nginx : http 웹서버

   -- php

  ** utils

   -- sed : 텍스트 파일 변조용. MSys에서 필요한 것만 가져올 거임

 - workspace : 작업 공간으로 사용할 폴더

 

1. Php 준비

 * http://windows.php.net/download 에서 (현 시점 기준) Php7.1.9 Non thread safe x64 버전을 다운로드 받는다.
   (가능하면 xdebug가 지원하는 버전을 쓴다. 너무 최신 버전은 정신건강에 안 좋음.) 

 * 0번 항목에 적힌 경로에 압축을 푼다.

 * 경량화는 안 한다. 필요없는 파일은 자기 판단하에 알아서 삭제.

 * php.ini 파일을 php.ini-development 나 php.ini-production 중에 맘에 드는 놈으로 만들어준다.

 * https://xdebug.org/download.php 에서 php 버전에 맞는 xdebug (ts 안적혀있는게 nts(=non thread safe) 임.) 파일을 다운로드 받는다.

 * 다운로드 받은 xdebug_블라블라.dll 파일을 php 폴더 안에 ext 폴더에 집어 넣는다.

 * php.ini 파일의 extension 섹션에 아래 항목을 추가한다.

zend_extension=php_xdebug.dll

 * 지금 준비한 php.ini는 vscode에서 디버깅용으로 만든 것이고, NginX용으로 한 개 더 만들어야 한다. php.ini 파일을 아래와 같은 파일명으로 복사하고 이 파일은 위에 추가한 xdebug.dll 관련 줄을 없애버린다. (안그러면 NginX 겁나 느려짐)

php_noxdebug.ini

 

2. NginX 준비

 * http://nginx.org/en/download.html 에서 윈도우용 nginx stable 버전을 받는다.

 * 0번 항목에 적힌 경로에 압축을 푼다.

 

3. NginX, Php 실행 및 FastCGI 설정

 * MSys는 nginx.conf 파일을 수정하기 위한 것으로 당장 필요한 것은 아니고 나중에 Visual Studio Code 에서 내가 코딩 중인 작업영역을 NginX의 서비스 Root로 만들어주기 위해 필요한 것이다. (NginX 실행용 배치파일의 내용에 rem (주석) 처리된 부분임.)

 * MSys 준비 (정확하게는 sed 준비)

 - MSys 전부가 필요한 것은 아니고, sed 만 있으면 된다.

 - 아니면, MSys-Git 같은 것을 사용한다면 그 안에 들어있는 MSys 유틸 꾸러미에서 sed를 땡겨와도 된다. 내가 그렇게 쓰고 있는데, 정작 내가 요즘 Git을 안 쓰니 문제다.

 - http://www.msys2.org 에서 msys2-x86_64-날짜.exe 파일을 다운로드 받는다.

 - 0번 항목에 적힌 경로에 압축을 푼다.

   (exe 파일이긴 한데, 반디집 같은 프로그램으로 이 exe 파일을 열면 압축을 풀 수 있다.)

 - 아래 내용의 파일들만 남기면 sed를 온전하게 실행할 수 있다. 나머지는 다 삭제해도 무방함.

msys-2.0.dll

msys-iconv-2.dll

msys-intl-8.dll

sed.exe

 - 나는 혹시 몰라서 여기에 아래와 같은 파일들을 추가로 살려뒀다.

   (웹이랑은 관계 없고, gcc 쓸 때 make, makefile 에서 쓰는 것을 봤기 때문)

cp.exe

mkdir.exe

mv.exe

rm.exe

rmdir.exe

 * NginX, Php 실행용 배치파일 준비 (위에 적었듯이 rem으로 주석 처리된 부분은 차후에 vscode에서 실행할 때는 모두 해제해야 된다. 따라서, 현 시점의 웹서비스 Root는 "nginx 폴더/html" 이다.)

 - 파일명 : nginx_start.bat

rem set "TARGET_WORKSPACE=%cd%"

rem set TARGET_WORKSPACE=%TARGET_WORKSPACE:\=\\/%

 

rem %VSC_DRIVE%

 

rem cd %VSC_ROOT%

rem ..\utils\sed\sed -i '0,/root.*/ s//root   %TARGET_WORKSPACE%;/g' ..\servers\nginx\conf\nginx.conf

rem ..\utils\sed\sed -i '0,/root.*/! {0,/root.*/! {0,/root.*/ s//root   %TARGET_WORKSPACE%;/g}}' ..\servers\nginx\conf\nginx.conf

 

rem cd ..\servers\nginx

start nginx.exe

 

cd ..\php

php-cgi.exe -c php_noxdebug.ini -b 127.0.0.1:9900

 

 * NginX, Php 종료용 배치파일 준비

 - 파일명 : nginx_stop.bat

@echo off

echo Stopping nGinX server...

 

taskkill /F /IM nginx.exe > nul

taskkill /F /IM php-cgi.exe > nul

 

exit

 

 

이제 다음 장에서 요놈들을 vscode에서 실행시킬 수 있게 해보자.

 

계속.

 

번호 제목 글쓴이 날짜 조회 수
35 sql server 우분투 클라이언트로 연결 꿈돌이 2023.11.01 17
34 vscode 리눅스에서 실행시 검은 화면 먹통 꿈돌이 2023.10.30 37
33 vscode 워크벤치 화면 이동 단축키 꿈돌이 2023.08.29 36
32 스크롤 할 때 함수명을 위쪽에 딱 붙이기 꿈돌이 2023.06.08 34
31 c_cpp 확장에서 goto definition이 header내 extern 으로만 넘어갈 때 꿈돌이 2023.06.08 1846
30 vscode c_cpp vcformat if else while 줄바꿈 안시키기 꿈돌이 2022.12.29 61
29 vscode 워크벤치 편집창에서 웹폰트 사용하기 꿈돌이 2022.09.21 155
28 vscode italic 설정 꿈돌이 2022.07.01 160
27 vscode 제안항목 트리거 취소 꿈돌이 2022.02.17 161
26 vscode 빈 패널 유지하기 꿈돌이 2021.10.07 71
25 vscode 1.60 이후 bracket pair colorizer 꿈돌이 2021.09.06 158
24 vscode 1.58 이후 편집창에 터미널 띄우기 꿈돌이 2021.07.09 240
23 vscode 1.55 이후 터미널 실행 내꺼 설정 꿈돌이 2021.05.17 78
22 vscode terminal 목록 켜기 꿈돌이 2021.05.07 70
21 VSCode git (Source Control)에 remote 표시 꿈돌이 2020.08.17 336
20 피씨방스튜디오 만들기 #번외6 - 닷넷코어 준비 꿈돌이 2019.01.02 632
19 피씨방스튜디오 만들기 #번외5 - JSP 준비 꿈돌이 2018.11.01 682
18 피씨방스튜디오에서 vscode 업데이트 꿈돌이 2018.09.06 573
17 vscode offline mode 설정 항목 꿈돌이 2018.08.18 3467
16 피씨방스튜디오 만들기 #번외4 - Go 준비 file 꿈돌이 2018.07.14 879