2009-08-11 2 views
2

Zend_Search_Lucene을 사용하여 색인을 만드는 데 문제가 있습니다.Zend_Search_Lucene - '/ data/users_index'디렉토리를 만들 수 없습니다.

이제 로컬 컴퓨터에서 모든 것이 잘 작동하므로 웹 서버에서 파일 사용 권한 문제 만있는 것으로 보입니다.

데이터 디렉토리 권한 여기 0777.로 설정했다 물론
$index = Zend_Search_Lucene::create('/data/users_index'); 

는 디렉토리 목록입니다 : 여기

내가 컨트롤러에 인덱스를 만들려고 해요 어떻게

public_html 
    public  0755 
     css  0755 
     js  0755 
     data 0777 

아직 I '이 오류 받고 있어요 :

Can't create directory '/data/users_index'.

답변

3

Edit/Update : 더 읽기와 구조를 본 후, 나는 그것에게 기회를주고 쓰기 위치로의 쓰기를 보장하기 위해 ABSOLUTE 경로가 아니라 상대를 사용해보십시오 것입니다. 미안하지만 그 부분을 빠뜨린 것. 분명히 모범 사례는 아니지만 허가 여부와 상관없이 최소한의 범위로 좁힐 것입니다.

그래서 당신은 정말 대중 HTML 폴더의 외부를 넣어해야하지만

$index = Zend_Search_Lucene::create('/path/to/public_html/public/data/users_index'); 

처럼 뭔가로 변경. 대중이 Lucene Index Files에 액세스해야하는 이유는 없습니다.

예를 들어, 광산은 여기에 저장됩니다 :

'../application/models/lucene/articles/index' 
당신이 리눅스/유닉스 시스템에있는 경우

, 당신은 그래서 폴더 또는 CHOWN/chgrp하지 chmod를해야하고자하는 웹 서버 쓰기 권한이 있습니다. 서버에 액세스 할 수있는 경우, 당신은 단순히 실행할 수 있습니다 :

chmod -R 770 /path/to/your/data/users_index 

당신이 그러나 서버의 관리자가 아닌 경우, 당신은 아마이에 적용 할 수있는 적절한 권한이 있는지 확인하기 위해 서버 관리자에게 문의해야합니다 이 폴더에는 모든 관리자가 폴더 사용 권한 설정 방법에 대한 자신 만의 단점이 있습니다. 그들이 속해야하는 그룹; 누가 그것을 바꾸게 되느냐?

Windows 컴퓨터를 사용하는 경우 폴더를 마우스 오른쪽 단추로 클릭하고 IUSR_XXXXX 계정에 사용 권한을 부여하고 해당 폴더에 대한 읽기/쓰기 권한을 부여해야합니다. (컴퓨터 이름이 무엇이든간에 XXX을 바꾸십시오.)

+0

대부분의 ZF 응용 프로그램에서 APPLICATION_PATH가 정의되어 있습니다 - APPLICATION_PATH. '/ models/lucene/articles/index' – gnarf

+0

사실 $ index = Zend_Search_Lucene :: create ('data/users_index'); 작동합니다. 기묘한. 내 로컬 컴퓨터에서 시작 부분에 슬래시를 넣는 지 여부는 중요하지 않습니다. –

0

$ 지수 = Zend_Search_Lucene : 생성 ('공공/데이터/users_index ');

??

+0

그 중 하나는 이미 작동하지 않았습니다. 물론 내 로컬 컴퓨터에서도 작동하지만 온라인에서는 작동하지 않습니다. –

관련 문제