2013-03-14 6 views
0

Apache 2.2.14 서버 (Ubuntu 10.04)에 XML 디렉토리가 있습니다. 필자는 PHP 응용 프로그램에서이 디렉토리에 대한 링크를 제공하여 사람들이이 디렉토리에서 파일을 다운로드 할 수있게하고 싶습니다.htacess를 사용하여 디렉토리 목록을 허용하지만 브라우저 캐싱을 비활성화하는 방법은 무엇입니까?

브라우저가 초기 파일 목록을 캐시하고 F5 키를 누르지 않으면 새 파일을 표시하도록 업데이트하지 않는 것이 문제입니다. 이 디렉터리는 많은 새 파일을 가져오고 실시간 업데이트가 필요하지 않지만 고객이 방금 업로드 한 파일을 보려면 F5 키를 눌러야한다는 내용의 메모를 바닥 글에 쓰지 않아도됩니다.

보너스 질문 : 루트 .htaccess 파일을 만들지 않기 위해 httpd.conf에 Options -Indexes을 넣을 수 있습니까?

을 httpd.conf

ServerName localhost 
FileETag none 
ExpiresActive On 
ExpiresDefault "access plus 30 days" 
ExpiresByType text/html A86400 

루트 htaccess로 파일 :

Options -Indexes 

XML 디렉토리의 .htaccess 파일

Options +Indexes 
IndexIgnore .. *.shtml 
IndexOptions SuppressHTMLPreamble XHTML HTMLTable SuppressDescription Charset=UTF-8 NameWidth=* 
HeaderName HEADER.shtml 
ReadmeName README.shtml 
AddType text/xml .xml 

HEADER.shtml

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr"> 
    <head> 
    <META HTTP-EQUIV="Pragma" CONTENT="no-cache"> 
    <META HTTP-EQUIV="Expires" CONTENT="-1"> 
    </head> 
    <body> 

README.shtml

</body> 
</html> 

이 링크가 자바 스크립트를 통해 열려있는 방법이라고 지적 가치가있을 수도 있습니다 : 내가 추가

var newWin = window.open(url,name,'height=800,width=600,menubar=no,titlebar=0,resizable=yes,toolbar=no,scrollbars=yes,screenX=100,screenY=100,dependent=no'); 
newWin.focus(); 

답변

0

ExpiresActive Off ~ XML 디렉토리 .htaccess 파일 디렉토리 목록은 항상 최신 상태입니다.

관련 문제