[PHP] 이클립스 php 개발환경 세팅

[PHP] 이클립스 php 개발환경 세팅

윈도우 10 환경이고 이클립스에서 php 개발환경 세팅하는 방법을 공유한다.

1. php용 이클립스 다운로드

https://www.eclipse.org/ 접속 – 우측상단 [Download] 버튼 클릭



[Download Packages] 클릭



Eclipse IDE for PHP Developers 항목을 찾고 [Windows x86_64] 를 클릭해서 php용 이클립스를 다운로드한다.

그런데 현재 최신버전(2021-03)의 경우 JDK11을 요구한다.

좀 더 하위버전에 해당하는 과거버전을 찾고자 하면 우측 MORE DOWNLOADS 항목에서 [Older Versions] 를 클릭한다.

Neon 버전을 받을 예정이다. Neon 클릭.



Eclipse Neon 항목에서 제일 위의 3 Packages 클릭.




Eclipse for PHP Developers 항목에서 [Windows 32-bit x86_64] 클릭해서 php용 이클립스를 다운로드 받는다.


 

다운로드받은 php용 이클립스는 특정위치에 압축을 해제하면 바로 사용 가능하다.

개인적으로 C:\coding\eclipse_php 위치에 압축해제했다.

(eclipse.exe 파일위치가 C:\coding\eclipse_php\eclipse.exe 가 되도록 위치시킴)

2. php 설치

원하는 버전에 맞게 php를 설치한다. 여기서는 php7.0.0 을 설치한다.

http://windows.php.net/download/ 에 접속한다. 과거버전을 받기 위해 Past release 버튼을 클릭한다.

또는 곧바로 https://windows.php.net/downloads/releases/archives/ 에 접속한다.



php-7.0.0 텍스트를 찾는다.

5 종류가 있다.

php-7.0.0-nts-Win32-VC14-x64.zip : 64비트용 nts(Non Thread Safety) 버전

php-7.0.0-nts-Win32-VC14-x86.zip : 32비트용 nts(Non Thread Safety) 버전

php-7.0.0-src.zip : php 소스파일

php-7.0.0-Win32-VC14-x64.zip : 64비트용 ts(Thread safety) 버전

php-7.0.0-Win32-VC14-x86.zip : 32비트용 ts(Thread safety) 버전

보다시피 nts 버전과 ts 버전이 제공되고 있는데, 차이는 간단하다.

IIS 웹서버 위에 FastCGI로 PHP를 사용하는 경우에는 NTS버전을 사용하면 된다.

Apache 웹서버 위에 PHP를 사용하는 경우에는 TS버전을 사용하면 된다.

여기서는 아파치를 사용할 것이라서 ts 버전을 다운로드 받으면 된다.

즉 64비트 컴퓨터 사용자는 php-7.0.0-Win32-VC14-x64.zip 파일을, 32비트 컴퓨터 사용자는 php-7.0.0-Win32-VC14-x86.zip 파일을 다운로드받으면 된다.

 

다운로드받은 압축파일을 원하는 위치에 압축해제한다.

개인적으로 C:\coding\php7 위치에 압축해제했다.

(php.exe 파일위치가 C:\coding\php7\php.exe 가 되도록 위치시킴)

3. php 설정파일 수정

[php7 설치폴더]/php.ini-production 파일을 복사/붙여넣기해서 같은 위치에 php.ini 파일을 만든다.

php.ini 파일 내용을 수정한다.

ex) C:\coding\php7\php.ini

[AS-IS] (721라인 부근)

; Directory in which the loadable extensions (modules) reside.

; http://php.net/extension-dir

; extension_dir = “./”

; On windows:

; extension_dir = “ext” 

[TO-BE]

; Directory in which the loadable extensions (modules) reside.

; http://php.net/extension-dir

; extension_dir = “./”

; On windows:

; extension_dir = “ext”

extension_dir = “C:/coding/php7/ext”

이때 extension_dir 의 값은 php7 이 위치한 실제경로에 맞게 입력해야 한다.

4. 아파치​ 웹서버 다운로드

php를 구동하기 위한 아파치 웹서버를 다운로드해야 한다.

아파치 2.4 버전을 사용하기로 했다.

apache_2.4.4-x64-openssl-1.0.1e.msi (64비트용)

다운로드 링크 : http://www.mediafire.com/file/utf9k7qf64equt6/apache_2.4.4-x64-openssl-1.0.1e.msi

apache_2.4.4-x86-openssl-1.0.1e.msi (32비트용)

다운로드 링크 : http://www.mediafire.com/file/1l78i2tve4vsowy/apache_2.4.4-x86-openssl-1.0.1e.msi

설치 과정에서 domain, server name, email 등을 입력하라고 나오는데 그냥 아무 값이나 입력하고 진행하면 된다.

전부 test라고 입력하고 넘어가도 상관없다.

설치 과정에서 설치되는 위치를 지정할 수 있다.

기본 경로로 설치해도 상관없고, 개인적으로 C:\coding\php_server\Apache2.4 위치에 설치했다.

4-1. 아파치 2.4 버전 EnableMMAP 관련 충돌방지

참고로 윈도우용 아파치 2.4 버전의 경우 일종의 속도느림 버그같은게 있어서 아래 내용을 적용하는 것을 권장한다.

아파치 2.4 기준 httpd.conf 파일을 아래와 같이 수정하면 된다. ([Apache 설치폴더]\conf\httpd.conf 파일 수정)

[AS-IS]

#EnableMMAP off

#EnableSendfile on

[TO-BE]

EnableMMAP off

EnableSendfile off

AcceptFilter http none

AcceptFilter https none

위 내용에 대한 자세한 내용은 https://blog.naver.com/bb_/222315194371 에서 확인할 수 있다.

5. 아파치(apache)와 php 연동

[Apache 설치폴더]/conf/httpd.conf 파일 내용을 수정한다.

ex) C:\coding\php_server\Apache2.4\conf\httpd.conf


파일 최하단에 아래 내용을 추가한다.

LoadModule php7_module “C:\coding\php7\php7apache2_4.dll”

AddType application/x-httpd-php .php .html


이때 php7_module 의 값은 php7 이 위치한 실제경로에 맞게 입력해야 한다.



6. 아파치 웹서버 재기동 및 php 실행 확인

[Apache 설치폴더]/htdocs에 phpinfo.php 파일을 만든다.

파일 내용은 다음과 같이 입력한다.

<?php phpinfo(); ?>

이후 아파치 웹서버를 재기동하자.

아파치 재기동 방법은 작업표시줄의 아파치 아이콘(자주색 깃털) 위에서 마우스 우클릭 – [Open Apache Monitor] 메뉴를 클릭



Apache Service Monitor 창이 뜨면 우측의 [Start] 버튼을 클릭하면 아파치가 기동된다.


만약 이미 웹서버가 기동 중이라서 Start 버튼이 비활성화 상태라면, [Stop] – [Start] 버튼을 차례로 클릭하거나, [Restart] 버튼을 클릭하면 아파치 웹서버를 재기동할 수 있다.


아피치 웹서버를 재기동했으면 http://localhost/phpinfo.php 에 접속해서 페이지가 잘 뜨는지 확인한다.

 

7. php용 이클립스 실행 및 관련설정

php용 이클립스를 실행한다.


이클립스 상단메뉴의 [Window] – [Preferences] 메뉴를 클릭한다.



Preferences 윈도우가 뜨면 좌측트리의 [PHP] – [PHP Executables] – [Add] 버튼을 클릭한다.



New PHP Executable 윈도우가 뜨면 Name 에 PHP 7.0 을 입력, Executable path 에 [php설치경로\php.exe] 를 입력 (ex : C:\coding\php7\php.exe), PHP ini file (optional) 에 [php설치경로\php.ini] 를 입력 (ex : C:\coding\php7\php.ini)하고 하단의 [Finish] 버튼을 클릭한다. 



이어서 Preferences 윈도우 좌측트리의 [PHP] – [Servers]에 들어가서 기존 서버를 클릭하고 [Edit] 버튼을 클릭한다.

기존 서버가 없다면 [New] 버튼을 클릭해서 만들면 된다.



Document Root의 위치를 [Apache 설치경로\htdocs] 위치로 지정한다. (ex : C:\coding\php_server\Apache2.4\htdocs)




8. 이클립스 프로젝트 생성 및 php 실행 확인

​이클립스 상단 메뉴의 [File] – [New] – [PHP Project] 메뉴를 이용해 새 php 프로젝트를 생성한다.

 


프로젝트 내에 test.php 파일을 생성한다.

파일 내용은 다음과 같이 입력한다.

<?php phpinfo(); ?>


test.php 파일 마우스 우클릭 – [Run As] – [PHP Web Application] 메뉴 클릭



http://localhost/[프로젝트명]/phpinfo.php 에 접속해서 페이지가 잘 뜨는지 확인한다.

물론 아파치 웹서버가 기동되어있는 상태여야 한다.


9. Configuration File 확인

phpinfo.php 페이지에 접속했을 때 “Loaded Configuration File” 항목의 값이 (none)이라면 php.ini 파일이 제대로 로드되지 않은 것이다.


 

9-1. php.reg 파일 작성 및 실행

원하는 위치에 아래 내용으로 php.reg 파일을 작성한다.

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\PHP]

“IniFilePath”=”C:\coding\php7”

“IniFilePath”의 내용은 실제 php가 설치된 위치여야 한다.

이후 php.reg 파일을 실행한다. 경고 메시지가 나오면 [예]를 클릭한다.

9-2. 레지스트리 확인

[시작] – [실행] – [regedit] 를 실행한다.

컴퓨터\HKEY_LOCAL_MACHINE\SOFTWARE\PHP 위치에 들어가서 IniFilePath 값이 제대로 들어갔는지 확인한다.



 

필자의 경우 값이 제대로 들어가지 않아서 여기서 수동으로 다시 추가했다.

마우스 우클릭 – [새로 만들기] – [문자열 값]으로 만들면 된다.

아파치 웹서버를 재기동해본다.

phpinfo.php 페이지에 접속했을 때 “Loaded Configuration File” 항목의 값이 php.ini 파일경로면 성공이다.

 

참고사이트 1 : https://blog.naver.com/sakura_pink/221017504361

참고사이트 2 : https://mkklab.tistory.com/8

참고사이트 3 : https://arisu1000.tistory.com/27706