설정 - constants.php BY 웅파
Posted by Albert 4118Day 15Hour 23Min 52Sec ago [2014-01-09]
저는 개발할때 config/constants.php에 한 접근경로에 http:// 로 시작하는 주소와 절대경로 주소를 선언하여
개발을 합니다.
물론 index.php가 있는 디렉토리를 기준으로 상대경로를 써도 됩니다.
ci의 url 헬퍼를 써도 되구요.
통상적으로 윈도우 환경에서 개발을 하고 리눅스서버에 올리는 경우 문제가 되는 것이 2가지있습니다.
1. 대소문자 : 윈도우는 대소문자 구분을 안합니다. COMMENT.jpg 라고 뷰에서 선언하고 실제로 이미지는 comment.jpg로
되어 있을 경우 개발시에는 에러가 안납니다. 개발하다보면 흔히 있는 일입니다. 코더의 실수 또는 개발자 실수 등등
2. 모든 경로를 ci의 내부에서 사용하면 문제가 안되나 이미지를 ci의 외부로 빼서 사용할 경우엔 윈도우 개발시
업로드할 때 경로문제가 생깁니다.
그럴 경우 아래와 같이 사용합니다.
윈도우일 경우엔 ci가 D에 있다면 D:\files\uploads를 반환하고 리눅스일 경우엔 /files/uploads 를 반환합니다.
개발을 합니다.
1.
define(
'CSS_ROOT'
, dirname(FCPATH).
'/include/css'
);
2.
3.
define(
'CSS_DIR'
,
'http://'
.
$_SERVER
[
'HTTP_HOST'
].
'/include/css'
);
물론 index.php가 있는 디렉토리를 기준으로 상대경로를 써도 됩니다.
ci의 url 헬퍼를 써도 되구요.
통상적으로 윈도우 환경에서 개발을 하고 리눅스서버에 올리는 경우 문제가 되는 것이 2가지있습니다.
1. 대소문자 : 윈도우는 대소문자 구분을 안합니다. COMMENT.jpg 라고 뷰에서 선언하고 실제로 이미지는 comment.jpg로
되어 있을 경우 개발시에는 에러가 안납니다. 개발하다보면 흔히 있는 일입니다. 코더의 실수 또는 개발자 실수 등등
2. 모든 경로를 ci의 내부에서 사용하면 문제가 안되나 이미지를 ci의 외부로 빼서 사용할 경우엔 윈도우 개발시
업로드할 때 경로문제가 생깁니다.
그럴 경우 아래와 같이 사용합니다.
윈도우일 경우엔 ci가 D에 있다면 D:\files\uploads를 반환하고 리눅스일 경우엔 /files/uploads 를 반환합니다.
1.
$ups
=
realpath
(FCPATH);
2.
if
(
strstr
(
$ups
,
':'
)) {
3.
$exs
=
explode
(
':'
,
$ups
);
4.
$ups_root
=
$exs
[0].
":\\files\\uploads"
;
5.
}
else
{
6.
$ups_root
=
'/files/uploads'
;
7.
}
8.
define(
'UPLOAD_ROOT'
,
$ups_root
);
너무나 유용한 팁인것같아서 퍼왔음 ^^
참고주소: http://codeigniter-kr.org/lecture/view/196/page/1/