반응형

Windows 10 64bit 운영체체에 IIS를 설치하고, PHP 7.2.5를 설치하여 연동합니다. 여기에 PHP와 Oracle 데이터베이스를 연동하여 사용할 수 있도록 필요한 설치를 해봅니다.

 

IIS의 설치는 "Windows 10에 IIS 설치하기" 글을 참조해서 설치해 주세요. PHP의 설치와 IIS와의 연동은 "Windows 10에 IIS 와 PHP 7 설치 및 연동하기" 글을 참조해서 설치해 주세요.

 

이제 PHP와 Oracle 을 연동해 보겠습니다.

 

 

1. 오라클 인스턴트 클라이언트 설치하기

다음 URL에서 오라클 인스턴트 클라이언트를 다운로드 받아서 설치합니다. 오라클 계정이 있어야 합니다. 여기서는 Oracle 11g 를 사용합니다.

 

http://www.oracle.com/technetwork/topics/winx64soft-089540.html

 

다운로드 받을 파일은 instantclient-basic-window.x64-11.2.0.4.0.zip 입니다.

 

 

 

설치는 압축을 풀어 적당한 곳에 옮겨 두고, PATH 환경 변수에 등록해 주면 되겠습니다. 설치 위치는 "D:\util\instantclient_11_2" 이고, 시스템 환경변수의 PATH 에 추가하였습니다.

 

 

 

PATH에 제대로 등록되었는지 명령창을 열어서 D:\>where oci*.dll 명령으로 확인해 봅니다.

 

 

 

 

2. OCI8 extension 설치하기

다음 URL에서 Windows용 php oci8 확장 dll 을 다운로드 받아 설치합니다. 현재 최신 버전이 2.1.8 버전입니다. 다운로드 받은 파일은 php_oci8-2.1.8-7.2-nts-vc15-x64.zip 입니다.

 

https://pecl.php.net/package/oci8/2.1.8/windows

 

 

 

압축을 풀어 php_oci8_11g.dll 파일을 PHP를 설치한곳 아래의 ext 폴더에 넣습니다.

 

 

3. PHP 와 Oracle 연동하기

 

PHP를 설치한곳 아래에 php.ini-development와 php.ini-production 파일중 하나를 php.ini 로 이름을 변경합니다. 여기서는 php.ini-development 파일을 php.ini 파일로 이름을 변경해서 사용했습니다.

 

extension_dir을 Windows 용으로 설정합니다. 행 맨앞의 세미콜론(;) 제거하면 됩니다.

 

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

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

; extension_dir = "./"

; On windows:

extension_dir = "ext"

 

확장 dll 을 로드하는 부분에 아래 라인을 추가합니다.

 

extension=oci8_11g

 

명령창에서 PHP가 설치된 곳으로 이동하여 php --ri oci8 명령으로 확장 dll이 정상적으로 로드 되는지 확인합니다.

 

 

 

 

4. IIS에서 연동확인하기

 

웹 루트에 아래 내용으로 info.php 파일을 작성합니다.

 

<?php

phpinfo();

?>

 

http://localhost/info.php 로 요청했을때 아래 처럼  OCI8 Support 가 enabled 로 나오면 연결 성공입니다.

 

 

 

Oracle Instant 클라이언트에 대한 PATH 설정이 IIS를 실행하는 프로세스에는 적용이 안되어서 명령창에서 확장이 사용가능한지 검사하였을때는 성공인데, 웹페이지로 phpinfo() 를 실행 했을때는 OCI8 항목이 올라오지 않을 수 있습니다.

 

World Wide Web Publishing 서비스를 재시작해 봅니다. 안되면 Windows를 재시작합니다. 보통 재시작을 하면 PATH환경변수가 적용이 되어 연동이 정상적으로 처리됩니다.

 

 

그래도 안되거나 Windows를 재시작할 수 없는 환경이라면 IIS 관리자 -> FastCGI 설정을 더블 클릭하여 들어갑니다.

 

 

 

등록된 php-cgi.exe 를 더블클릭하여 속성창을 엽니다.

 

환경변수(컬렉션) 옆의 버튼을 클릭하여 PATH 환경변수를 추가합니다.

- Name : PATH

- Value : %PATH%;D:\util\instantclient_11_2

 

 

 

이처럼 FastCGI 설정에 직접 PATH를 추가하는 방법도 있습니다.



출처: https://offbyone.tistory.com/329 [쉬고 싶은 개발자]

반응형

'OS > Window' 카테고리의 다른 글

Windows 10에 IIS 설치하기  (0) 2020.04.06
반응형

Windows 10에 IIS 를 설치하면 asp.net 으로 작성된 웹 애플리케이션을 실행할 수 있습니다. 또한 PHP 와 연동하거나 Tomcat과 연동하여 사용할 수도 있습니다.

 

1. "설정 -> 앱" 화면에서 오른쪽에 "프로그램 및 기능"을 실행합니다.

 

 

또는 Window + R 키를 눌러서 실행창을 띄운후  appwiz.cpl 을 실행합니다.

 

 

2. "프로그램 및 기능" 화면에서 "Windows 기능 켜기/끄기" 를 클릭합니다.

 

 

3. "Windows 기능 켜기/끄기" 화면에서 필요한 기능을 켭니다.

 

 - "인터넷 정보 서비스(Internet Information Service)"를 확장합니다.

 

 - "World Wide Web 서비스" 를 켭니다. 여기서는 하위 기능은 기본으로 합니다.

 

 - "웹 관리 도구"에서는 "IIS 관리 콘솔"에 체크합니다.

 

 

4. 응용 프로그램 개발 기능

 

 - IIS에서 응용프로그램을 실행하기 위해서 기능을 추가할 수 있습니다.

 

 - "ASP"를 체크해서 asp 프로그램을 실행할 수 있습니다.(이제는 잘 사용하지않습니다.)

 

 - "ASP.NET 3.5" 또는 "ASP.NET 4.7" 을 선택해서 asp.net 프로그램을 실행 수 있습니다.

 

 - "CGI(Common Gateway Interface)" 는 IIS 가 외부 프로그램을 실행시키는 방법을 제공해줍니다. CGI는 오래전부터 사용되어진 방법인데 요즘은 잘 사용하지 않는것 같습니다. 이 방식은 요청이 있을때마다 외부 프로그램 실행해서 요청이 만큼 외부 프로그램의 프로세스가 생성됩니다.

 

 - "ISAPI(Internet Server Application Programming Interface)" 는 PHP 와 Java 응용프로그램의 연동에 사용되어집니다. 이 방식은 웹서버 프로세스에서 DLL을 로드한 후 필요할때 호출하는 방식이므로 CGI보다 빠르게 수행됩니다. Thread 로 수행되므로 PHP 연동시 Thread-safe 바이너리를 사용하는게 안정적입니다. Non Thread-Safe 바이너리를 사용시 ISAPI 대신에 FastCGI를 사용하게 됩니다.

 

 

 

 

 

5. 관리 콘솔실행하여 웹사이트 실행하기

 

- IIS 관리자를 실행합니다.

 

 

- 왼쪽 트리 에서  사이트의 Default Web Site 를 선택하고, 오른쪽의 시작 버튼을  눌러 웹사이트를 실행합니다.

 



출처: https://offbyone.tistory.com/301 [쉬고 싶은 개발자]

반응형

'OS > Window' 카테고리의 다른 글

Windows 10 에 IIS 와 PHP 7 설치 및 연동하기  (1) 2020.04.06
반응형

*세팅값 작성을 생활화 하자

Version :Ubuntu 16.04.6 LTS

Kernel : 4.4.0-142-generic

설치환경 :  Text 모드

 

*장비  : MacBook Parallels Ubuntu

 

Ubuntu를 설치하고 작업을 수행하기 전 보통 `apt-get update`를 수행하는데...

간혹 설치 이후에 저장소 문제로 한번 쯤 아래와 같은 에러 문구를 경험한다.

요놈의 Hash가 뭐길래 이러지?

작업 시작 전부터 맹붕을 주게하는 귀찮은 에러들...


원인

*has sum mismatch

1. 저장소와 통신간에 의존성이 맞지 않아 나는 오류(Archive파일에 잘못된 생성 등)

2. 저장소와의 인터넷 속도 문제

 

1번 경우가 간혹 있기는 하나, 이건 드문 경우고 대부분 해당 저장소까지 속도가 나오지 않아 제대로 패키지들이 받아지지 않는 경우가 더 많다고 한다.

 


해결방법

 

해결방법은 여러가지가 있으나, 제일 간단한 방법은 원인2[ 저장소와의 인터넷 속도 문제]를 가지고 해결하는 방법으로 가본다.

 

vi편집기로 sources.list를 들어간다.

vi /etc/apt/sources.list

 

[sources.list] 파일 안에 있는 저장소가 정의되어있다.

사진 보다 실제로 14~16개 정도의 저장소 정보가 있다.

vi 커맨드를 사용하여 한번에 일괄적으로 바꾼다.

:%s/<현재 저장소>/<바꾸고자 하는 저장소>/g

:%s/us.archive.ubuntu.com/ftp.daum.net/g

 

적용된것을 확인

저장 후 빠져나온다.

:wq

 

다시 명령어를 실행해 보니

apt-get update

정상적으로 수행되는 것을 확인 가능

 

출처 : https://enterenable.tistory.com/15

반응형

'OS > ubuntu' 카테고리의 다른 글

ubuntu 16.04 nvm 설치 및 nodejs 설정하기  (0) 2019.10.23
반응형

aws를 사용할 일이 있어, 잠시 AWS EC2 리눅스 ubuntu 가상서버 인스턴스를 생성할 일이 있었습니다. 이때 생성한 버전이 ubuntu 16.04였는데, nodejs를 설치할만한 방법이 없는지 찾는 중, nvm을 통해서 nodejs 및 npm을 동시에 설치할 수 있겠다 싶어 nvm 설치 방법을 찾아보았습니다.

nvm은 node version manager로써, nvm 명령어를 통해 node 버전 설치 및 각 프로젝트별 node 버전, npm 버전 관리가 가능한 플러그인입니다. 자세한 내용은 nvm github 을 살펴보시면, 커맨드나 다양한 방법을 찾아보실 수 있습니다.

사용법

1) 관련 패키지 설치하기

ubuntu에 nvm을 설치하기 위해, apt를 이용하여 설치하고자 합니다. npm 및 nodejs 관련 모듈을 설치하기 위해, apt로 다음과 같은 모듈을 먼저 설치합니다.

 

sudo apt-get install build-essential libssl-dev

2) NVM 설치

curl을 이용하여 nvm을 설치합니다. (command에 나온 버전은 0.33.11 버전입니다.)

 

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.0/install.sh | bash

3) BASHRC를 통해 적용

bashrc를 업데이트 합니다.

 

source ~/.bashrc

4) NVM 설치 확인

nvm이 정상적으로 설치되었는지를 확인해보기 위해서, nvm version을 확인해 봅니다.

 

nvm --version 
> 0.33.11

nvm 버전이 정상적으로 출력되면 설치가 완료된 것입니다.

5) NVM을 이용하여 NODEJS 설치하기

nvm을 이용하여 nodejs를 설치하시면, npm도 그에 맞는 버전으로 정상적으로 설치됩니다. 현재(2019년 10월) 적용된 Node.js LTS 버전이 12.13.0이므로, 해당 버전을 설치합니다.

 

nvm install 10.15.1

node 버전을 확인합니다.

 

node --version 
> 10.15.1

npm도 동시에 설치가 되어 있는지 확인합니다.

 

npm --version 
> 6.4.1

이제, ubuntu내에서 nvm을 이용하여 각 버전별로 nodejs 및 npm을 설치할 수 있으며, 프로젝트별로 node version을 변경할 수 있습니다. 

 

 

출처 : https://trustyoo86.github.io/nodejs/2019/02/18/ubuntu-nvm.html

반응형

+ Recent posts