본문 바로가기

PHP

PHP 웹프로젝트 개발시 겪을 수 있는 몇 가지 상황

728x90
반응형
1. GET 또는 POST로 전달한 파라미터의 값을 구할 수 없는 경우

일반적으로 GET 또는 POST 방식으로 전달한 파라미터의 값을 읽어올 때에는 다음과 같은 방법을 사용한다.

$value1 = $_GET['value1'];
$value2 = $_POST['value2'];

가끔 PHP 파일 작성시 위와 같은 방법으로 파라미터의 값을 구하지 않고 직접 변수를 사용하는 경우를 볼 수 있다.
이러한 경우는 php.ini 의 설정중 register_globals 의 값이 On 으로 설정되어 있을 경우에만 가능하다.
register_globals 의 기본설정값은 Off 이다.

XAMPP 를 설치한 경우 php.ini 파일을 두 곳 정도에서 찾을 수 있는데, 실제로 사용되는 php.ini 파일은 XAMPP\apache\bin 디렉토리에 존재하는 파일이다.

2. 프로젝트별 서브디렉토리 설정 (아파치 웹서버 설정)

XAMPP 를 설치한 이후 웹브라우저에서 http://localhost 라고 입력하면 XAMPP 가 설치된 디렉토리의 하위 디렉토리인 htdocs 디렉토리 아래의 index 파일이 실행된다.
이것은 httpd.conf 파일(XAMPP\apache\conf)에서

DocumentRoot "C:/XAMPP/htdocs"

와 같이 설정되어 있기 때문이다.

그런데 거의 대부분의 개발자들은 위 디렉토리를 로컬에서 개발하는 프로젝트의 루트디렉토리로 사용하지 않는다.
예를 들어서 D:\MyWebProject 라는 디렉토리를 웹프로젝트의 개발 루트 디렉토리로 사용한다라고 가정한다면 그 하위로 도메인별 루트폴더를 만들어서 프로젝트를 관리한다.

D:\MyWebProject\iwoohaha.com ==> iwoohaha.com
D:\MyWebProject\daesungmicro.com ==> daesungmicro.com
D:\MyWebProject\dkter.com ==> dkter.com

이런 경우 로컬에서 테스트하기 위한 웹주소를 다음과 설정해야 할 필요가 있다.

iwoohaha.com ==> http://localhost/iwoohaha
daesungmicro.com ==> http://localhost/daesungmicro
dkter.com ==> http://localhost/dkter

위와 같이 설정하기 위해서는 httpd.conf 파일에 Alias 를 추가설정하면 된다.

Alias    /iwoohaha          "D:/MyWebProject/iwoohaha.com/"
Alias    /daesungmicro    "D:/MyWebProject/daesungmicro.com/"
Alias    /dkter                  "D:/MyWebProject/dkter.com/"

Alias 이름에 /iwoohaha/ 처럼 마지막에 슬래시를 붙이는 것과 떼는 것의 차이는 직접 알아보는 것이 좋을 듯 하다.


반응형