2017-03-09 3 views
0

나는 Codeigniter로 사이트를 만들었고 사용자는 사진을 업로드 할 수있는 옵션을 가지고 있습니다. 사진은 개인적인 것이므로 웹 디렉토리에 보관하는 것이 안전하지 않다고 생각합니다. 결과적으로 나는 /var/www/images 디렉토리와 같은 루트 디렉토리에 보관했습니다. 자, 어떻게 웹 페이지에서 이미지를 얻을 수 있습니까?PHP Codeigniter의 루트 디렉토리에서 웹 페이지의 이미지를 표시하는 방법?

+0

직면 한 문제는 무엇입니까? –

답변

0

Wrong Choice 친애하는 학습자. 당신은 이미지 경로에 의해 그 이미지를 렌더링하기 위해 코드와 브라우저로 접근 할 수 있어야합니다.

enter image description here

예를

를 들어이 내 프로젝트의 이미지 디렉토리입니다. 내 웹 사이트의 다른 페이지에서이 모든 이미지를 사용하고 있습니다. 일부는 내 코드에 의해 동적으로 선택됩니다.

이제 www 폴더에 이미지를 넣으면 PHP 지침에서 권장하지 않는 http://images/ 경로를 만들고 있습니다. 이미지 폴더는 외부가 아닌 프로젝트 루트에 있어야합니다.

당신이 볼 수 있도록 폴더를 사용하지 않으려면, 그저 빈 index.html을 파일을 추가 할 수 있지만 당신이보고있는 이미지를 보호하려고하면 다음 웹 사이트를 못해 너무 image protection in codeigniter

0

코드의 뜻을 찾을 수 네가하는 것처럼 안전 해. 글쎄, 웹 서버는 여전히 이미지에 액세스해야합니다.

나머지 코드를 무시하거나 달성하려고 시도하는 동안 웹 루트에서 이미지를 참조하거나 아마도 심볼릭 링크를 만들 수 있습니다.

또한 AWS와 같은 다른 장소에 이미지를 넣으려고합니다.

0

보안이 중요하면 이미지를 볼 수있는 권한이 있는지 확인한 후 이미지를 볼 수있는 ImagesController를 만들 수 있습니다. 업로드 된 이미지는 공개이어야하는지 여부를 지정하는 열을 가질 수있는 데이터베이스의 테이블 안에 일부 참조 행이 있어야합니다 (또한 사용자 프로필 사진, 제품 이미지 등 무엇을 나타내는 지에 따라 폴더로 정렬하려고 시도합니다) . 약간의 작업이지만이 방법을 사용하면됩니다. 온라인을 통해 이미지를 반환하는 컨트롤러의 예를 확인할 수 있습니다.

프로젝트에 행운을 빕니다.

관련 문제