어제 작업한 업로드 크기가 잘못되었다구 한다. 젠장 .

session.gc_maxlifetime = 3600
upload_max_filesize = 8M
post_max_size = 8M
memory_limit = 8M

다음과 같이 변경을 해주면 되는것 같다.  

위에서  session.gc_maxlifetime =3600  은 세션에 관한 사항이다.

http 프로토콜에 post메서드는 스트림을 따로 만들기때문에 큰 파일을 전송할때 사용합니다.

php에서 post_max_size라 함은 그 post data 의 최대 사이즈를 선언하는것이고,

upload_max_filesize 는 말그대로 업로드할 파일 최대 사이즈를 선언하는것입니다.

 

파일과 함께 기타 다른 테이터들이 전송되므로

upload_max_filesize  보다 post_max_size가 더 크게 선언되야합니다.

 

아마  max_filesize 가 1 mb고 post_max_size가 9mb면 1mb크기의 4~5개 파일을 한번에 폼전송으로 할수 있을거라 봅니다.

[출처] upload_max_filesize|작성자 엑스라인

'Dev > PHP' 카테고리의 다른 글

FreeTDS 설치 (PHP와 MS-SQL 연동)  (0) 2011.05.13
CentOS 64bit Apache PHP 컴파일 설치  (2) 2011.05.13
PHP Configure Option  (0) 2011.05.13
PHP 암호화 함수정리  (0) 2011.05.07
[PHP] Thread safe / non Thread safe  (2) 2011.04.19

자바에서 Java Advanced Imaging 클래스를 제공한다.


사이트는 https://jai-imageio.dev.java.net/ 여긴데 다운로드를 뒤져봐도

api 명세에 있는 javax.media.jai.JAI 클래스를 찾을수가 없더라...

그래서 따로 검색...

 

JAI apidocs는 http://java.sun.com/products/java-media/jai/forDevelopers/jai-apidocs/index.html 에서 볼 수 있다.


그럼, 간단하게 이미지를 리사이즈하는 방법을 알아보자,


  ParameterBlock pb = new ParameterBlock();
  pb.add("source_image.jpg");

  RenderedOp rOp = JAI.create("fileload", pb);


JAI.create()의 두번째 인자로 각각을 넣어줄 수도 있지만 JAI 1.1 이후 deprecated되었으므로 ParameterBlock를 생성하여 넘기는 방법을 쓰자,

생성한 ParameterBlock객체에 .add로 파일명을 넣어주면 된다.


  BufferedImage im = rOp.getAsBufferedImage();


입력 파일에 대해 BufferedImage형식으로 받아오고,


  BufferedImage thumb = new BufferedImage(50, 50, BufferedImage.TYPE_INT_RGB);


썸네일(리사이즈)이미지를 위한 공간을 만든다. 50,50은 width, height되겠다.


  Graphics2D g2 = thumb.createGraphics();
  g2.drawImage(im, 0, 0, 50, 50, null);


썸네일 버퍼공간에 대해 Graphics2D객체를 얻어와서 입력이미지에 있는 내용을 그린다.(0,0위치에 50,50크기로 복사)


  File outfile = new File("thumb.jpg");
  ImageIO.write(thumb, "jpg", outfile);


출력파일에 대한 객체를 만들고 ImageIO.write로 출력.

 

이미지 리사이즈 이외에도 입력 이미지를 BufferedImage형식으로 받아올 수 있기 때문에

이미지에 대한 작업이 전반적으로 가능하다.

 

참고로 각 필요 클래스의 위치는 다음과 같다.

 

java.io.File

java.awt.Graphics2D

java.awt.image.BufferedImage

javax.imageio.ImageIO

javax.media.jai.JAI

javax.media.jai.RenderedOp

 

JAI클래스들은 첨부파일을 다운받아 압축을 풀면 나오는 세 jar파일을 jdk홈/jre/lib/ext에 넣으면 된다.

톰캣에서 서비스를 위해서는 톰캣홈/common/lib에 마찬가지로 복사


'Dev > JAVA' 카테고리의 다른 글

Spring framework 설치  (0) 2012.11.25
자바 데몬(daemon) 만들기  (0) 2011.06.09
Java Simple Daemon  (0) 2011.06.05
자바 이미지 사이즈 추출 예제  (0) 2011.04.23

+ Recent posts