Add following settings to “/etc/php5/apache2/php.ini”
memory_limit = 32M upload_max_filesize = 32M post_max_size = 32M file_uploads = On
Add following settings to “/etc/php5/apache2/php.ini”
memory_limit = 32M upload_max_filesize = 32M post_max_size = 32M file_uploads = On
Single File PHP Gallery를 설치 해 보았다.
index.php 파일 하나를 사용하여 웹서버에 있는 사진을 표시해 준다.
현재 버전은 4.1.1
한글 파일 이름이 깨져서 보이는 것 빼고는 DB도 사용하지 않고 간단하게 사용할 수 있다.
____________________________________________________________
FEATURES
* Free for private non commercial use
* Very simple Plug’n’Play like ease of use
* Uses no Database
* Automatically creates thumbnails
* Option to create and use intermediate preview images
* Displays EXIF information
* Rotates/corrects orientation of images using EXIF information
* Option to add watermark to all images in gallery
* Supports JPG, JPEG, PNG and GIF
* Unlimited numbers of sub galleries
* See configuration information for all features
____________________________________________________________
REQUIREMENTS
For this gallery to function you will need the following:
* A web server capable of running PHP 5 scripts
* The PHP GD library (php_gd) installed. See here for information: http://php.net/gd
* PHP write access to server
* PHP memory limit large enough to contain both full size image and preview/thumb (converted to BMP) See the FAQ section for further information on this.
____________________________________________________________
HOW TO USE / QUICK START
The only thing you have to do is place a copy of the index.php file to any directory of your web.
When this is done all images (jpg, jpeg, png, gif) and files if enabled, in that directory and all sub directories will be shown in the gallery.
By default the script will try to create a folder called “_sfpg_data” in which thumbnails, previews and information is saved. This can be changed using the DATA_ROOT co
자세한 사항은 다은 홈피 참조
서버에 설치 된 경로
http://howto.homelinux.com/trace 페이지에 checkin 장소을 표시한 google map를 추가 하였다.
php를 사용하여 Foursquare history정보를 xml로 변환 후( foursquare_genxml.php) Google Maps AJAX 를 사용하여 지도를 생성 하였다.
참고 사이트
http://www.joesiewert.com/2010/04/how-to-use-the-foursquare-api-with-oauth-and-php/
http://code.google.com/intl/ko/apis/maps/articles/phpsqlajax.html
Foursquare API를 php로 구현한 예제 사이트가 있어 테스트 해 보았다.
참고 사이트 :
http://www.joesiewert.com/2010/04/how-to-use-the-foursquare-api-with-oauth-and-php/
먼저 foursquare-asyc library ( jmathai-foursquare-async-4a09f5d.tar.gz) 를 받아 서버에 압축을 풀어 준다. 본 예제에서는 서버의 /var/www/trace 에 압축을 풀었다.
/var/www/trace 폴더에 압축파일에 포함된 EpiCurl.php, EpiFoursquare.php, EpiOAuth.php 파일이 있어야 한다.
추가로 index.php와 callback.php를 코드를 참조하여 같은 /var/www/trace 폴더에 추가 한다. 이 때 consumer_key와 consumer_secret값은 foursquare 사이트에서 받아야 한다. 받는 방법은 http://foursquar.com/oauth 에 접속 하여 Applicatin Name, Application Web site, callback url를 적어 준후 register 버튼을 누르면 생성된다. (foursquare에 가입하지 않았다면 먼저 가입 한다)
본 예제에서는
Application Name : Trace
Application Web Site: http://howto.homelinux.com
Callback URL: http://howto.homelinux.com/trace/callback.php
로 하였다.
여기서 받은 key값을 index.php와 callback.php에 수정해 놓어야 한다.
마지막으로 http://howto.homelinux.com/trace/ 에 접속하여 Login Via Foursquare를 클릭 한 후 foursquare사이트에서 allow를 클릭 하면 자신의 foursquare 정보를 볼 수있다.
http://howto.homelinux.com/trace/
참고로 본 예제에서는 index.php와 callback.php 를 수정 하였다. 그리고 한글이 깨지는 현상이 있어 <meta http-equiv=”content-type” content=”text/html; charset=UTF-8“>를 헤더에 추가 하였고 cookie를 사용하여 OAuth token정보와 secret값을 저장하였다.
gd library가 있는데도 PHP에서 문제가 발생하였다.
1. PHP 정보 확인
– info.php파일을 만들어 확인결과 gd 라이브러리가 안 올라옴.
$ cat info.php
<?php
phpinfo();
?>
2. error 정보를 보기 위해 /etc/php5/apache2/php.ini파일을 수정
$ diff php.ini.bak php.ini
344c344
< log_errors = Off
—
> log_errors = On
390c390
< ;error_log = filename
—
> error_log = /var/log/php.txt
3. apache 재시작 및 log파일 확인
$ sudo /etc/init.d/apache2 restart
$ cat /var/log/php.txt
[19-Feb-2009 06:38:16] PHP Warning: PHP Startup: Unable to load dynamic library ‘/usr/lib/php5/20060613+lfs/gd.so’ – /usr/lib/php5/20060613+lfs/gd.so: undefined symbol: gdImageCreateFromJpeg in Unknown on line 0
4. php -m 명령으로 모듈 확인
$ php -m
PHP Warning: PHP Startup: Unable to load dynamic library ‘/usr/lib/php5/20060613+lfs/gd.so’ – /usr/lib/php5/20060613+lfs/gd.so: undefined symbol: gdImageCreateFromJpeg in Unknown on line 0
[PHP Modules]
bcmath
bz2
calendar
ctype
date
dba
…
5. 라이브러리 확인
$ nm -D /usr/lib/php5/20060613+lfs/gd.so |grep gdImageCreateFromJpeg
U gdImageCreateFromJpeg
U gdImageCreateFromJpegCtx
$ nm -D /usr/lib/libgd.so.2 |grep gdImageCreateFromJpeg
00013230 T gdImageCreateFromJpeg
000129c0 T gdImageCreateFromJpegCtx
000131d0 T gdImageCreateFromJpegPtr
$
libgd.so없는 경우 설치
$ apt-get install libgd2-xpm-dev
6. 라이브러리 위치 확인
$ ldd /usr/lib/php5/20060613+lfs/gd.so
linux-gate.so.1 => (0xb7f47000)
libgd.so.2 => /usr/local/lib/libgd.so.2 (0xb7ee9000)
libt1.so.5 => /usr/lib/libt1.so.5 (0xb7e96000)
libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0xb7e28000)
libX11.so.6 => /usr/lib/libX11.so.6 (0xb7d41000)
libXpm.so.4 => /usr/lib/libXpm.so.4 (0xb7d31000)
libpng12.so.0 => /usr/lib/libpng12.so.0 (0xb7d0e000)
libz.so.1 => /usr/lib/libz.so.1 (0xb7cf9000)
libjpeg.so.62 => /usr/lib/libjpeg.so.62 (0xb7cd9000)
libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0xb7b89000)
libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0xb7b64000)
libxcb-xlib.so.0 => /usr/lib/libxcb-xlib.so.0 (0xb7b62000)
libxcb.so.1 => /usr/lib/libxcb.so.1 (0xb7b4a000)
libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0xb7b46000)
/lib/ld-linux.so.2 (0xb7f48000)
libXau.so.6 => /usr/lib/libXau.so.6 (0xb7b42000)
libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0xb7b3d000)
$
7. libgd위치 확인 결과 /usr/local/lib과 /usr/lib에 다른 버전이 있었음.
$ locate libgd (위치 확인)
…
$ cd /usr/local/lib
$ sudo mkdir libgd.backup
$ sudo mv libgd.so* libgd.backup
$ sudo /etc/init.d/apache2 restart
8 . 정상동작 확인
$ php -m
참고사이트 : http://scarybear.net/journal/articles/view/155/
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=470483
Gallery사용하다 보면 크기가 큰 파일이 업로드가 되지 않는 문제가 있다. 이것은 PHP설정에 Max size값이 설정 되어 있기 때문이다.
이값을 변경하는 방법은 다음과 같다.
$ sudo vi /etc/php5/cli/php.ini
…
post_max_size = 50M
upload_max_filesize = 12M
…
설정값 변경후 webserver(apache)를 재시작 한다.
$ sudo /etc/init.d/apache2 restart