1. HTTP 설치
http://www.apachelounge.com/download/
32/64비트에 맞춰서 다운로드하고
위 페이지 중간 쯤에 있는 Visual Studio 관련 링크 화일을 다운로드 및 설치 합니다.
https://www.microsoft.com/en-us/download/details.aspx?id=49984
Visual Studio 관련화일은 다운로드 받아서 실행하면 그대로 윈도우에 설치가 되며,
아파치 화일은 다운로드 후 압축을 풀어 적당한 위치에 옮겨둡니다.
저는 C:\Apache24 로 지정하였습니다.
고급설정 환경변수에서 시스템 환경변수 중 PATH 에 C:\Apache24\bin 을 추가해주고,
커맨드 창에서
– 서비스 등록
> httpd -k install
– 서비스 실행
> httpd -k start
한 후 브라우저에서 localhost 라고 치면 홈페이지가 나오는 것을 확인하실 수 있습니다.
참고로
– 서비스 종료
> httpd -k stop
– 서비스 제거
> httpd -k uninstall
2. PHP 설치
http://windows.php.net/download/
Thread 버전 다운받기
마찬가지로 다운로드 받은 화일 압축을 풀어준 후 적당한 곳에 옮겨둡니다.
저는 여러 폴더 만들기가 귀찮아서
C:\Apache24\php56
이라고 만들어 옮겨 두었습니다.
php 폴더 내에 있는 php.ini-production 화일을 php.ini로 바꿔서 Windows 폴더에 옮겨 줍니다.
이 후 아래 부분들을 수정해 줍니다.
display_errors = On
extension_dir = “C:\Apache24\php56\ext”
date.timezone = Asia/Seoul
extension=php_oci8_12c.dll ; Use with Oracle Database 12c Instant Client
또한 httpd.conf 도 수정합니다.
LoadModule php5_module “c:/Apache24/php56/php5apache2_4.dll”
AddHandler application/x-httpd-php .php
# configure the path to php.ini
PHPIniDir “C:/Windows”
<FilesMatch \.php$>
SetHandler application/x-httpd-php
</FilesMatch>
이 후 아파치 재시작해서 php가 제대로 작동하는지 확인 바랍니다.
3. Oracle InstantClient
http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html
오라클 instant Client basic 과 SQL*Plus 화일을 다운로드 받아서 압축을 푼 후
같은 폴더에 몰아 둡니다.
역시 귀찮은 관계로 C:\Apache24\instantclient_12_1 이라는 곳에 몰아 넣었습니다.
그 다음으로 여기 폴더에 있는 화일 중 “o”로 시작하는 dll 화일들을 저는 귀찮아서 모두를
C:\Apache24\bin 폴더에 몰아 넣습니다.
이 후 고급설정 환경변수에서 시스템 환경변수 중
PATH 에 C:\Apache24\instantclient_12_1
ORACLE_HOME 에 C:\Apache24\instantclient_12_1
TNS_ADMIN 에 C:\Apache24\instantclient_12_1
을 추가해주고,
커맨드 창에서
> sqlplus user/pass@192.168.1.2/orcl
로 접속이 되는지 확인합니다.
물론 위와 같은 오라클 서버가 잘 돌아가고 있다는 전제하에서 입니다.
접속이 된다면…..
4. 설정 잡기
아파치를 재시작해보고
phpinfo(); 를 해서 OCI8 이 나오는지 확인 해보고
여기서 안 나오면 대략 난감.. (저도 이 부분에서 만 하루를 헤맸습니다.)
5. 테스트해보기
<?php
$conn = oci_connect(“USER”, “PASS”, "192.168.1.2:1521/orcl");
if (!$conn) {
$m = oci_error();
echo $m['message'], "\n";
exit;
}
else {
echo "Connected to Oracle!";
}
/* multi rows */
$query = "SELECT COLUMN1,COLUMN2 FROM TABLENAME”;
$stid = oci_parse($conn, $query);
oci_execute($stid);
while (($row = oci_fetch_array($stid, OCI_BOTH))) {
echo $row[0] . " : " . $row[1] . "<br>";
}
echo "Total Count : " . oci_num_rows($stid);
oci_free_statement($stid);
oci_close($conn);
?>
잘 나온다면 성공한 겁니다. 축하합니다. ㅠㅠ