'nginx'에 해당되는 글 7건
2011/12/14 15:43
[서버관련]
nginx로 proxy서버로 사용할때 목적지서버의 404나 403 등의 에러응답코드를
다른것으로 변조하고 싶은경우가 있다.
이럴경우 아래의 코드를 삽입해서 proxy서버에서 직접 콘트롤 가능하게 할 수 있다.
proxy_pass http://00.00.00.0;
xxx
proxy_intercept_errors on;
error_page 403 /403.jpg;
xxx
proxy_intercept_errors on;
error_page 403 /403.jpg;
proxy서버에서 특정페이지로 redirect하거나 여러가지 일을 할 수 있다.
2011/04/26 16:26
[개발자이야기]
네이버 실시간 검색어 2,3위를 왔다갔다 하는 "허닭"


프로세스 164, 로드 3.x 대로
아직 여유있는 모습을 보여준다..
초당 새롭게 들어오는 방문자는 70 여명 수준.
고맙다. nginx~
프로세스 164, 로드 3.x 대로
아직 여유있는 모습을 보여준다..
초당 새롭게 들어오는 방문자는 70 여명 수준.
고맙다. nginx~
2011/04/26 15:37
[서버관련]
502 bad 에러를 내뱉는다..
ajax로 호출하는 페이지에 양이 많을경우( 아마 헤더용량을 넘어선듯..)
nginx.conf에 아래를 추가한다.
fastcgi_buffers 4 256k;
fastcgi_buffer_size 128k;
fastcgi_buffer_size 128k;
에러가 안난다.. 너무큰가.. 기본값이 4k 인가. 암튼..ㅋ
2011/04/08 17:09
[서버관련]
사용자 업로드폴더(웹에서접근가능)나 업로드폴더가 아닌 일반 이미지폴더에
<? phpinfo() ?> 로 저장후 test.jpg를 올리게 되면
nginx는 uri 뒤에 확장자만 .php면 넘기게 되어 있기때문에 보안에 주의해야합니다.
위의 경로로 test.jpg가 구동되는것을 방지하려면,
이렇게 구성해주면 됩니다.
통상적인 프레임워크를 쓰기위한 rewite 가 아래와 같이 구성되어 있으면
nginx 쓰면서 가장 보안에 주의해야할 부분입니다.
<? phpinfo() ?> 로 저장후 test.jpg를 올리게 되면
nginx는 uri 뒤에 확장자만 .php면 넘기게 되어 있기때문에 보안에 주의해야합니다.
ex) http://abc.com/images/test.jpg/xxx.php
위의 경로로 test.jpg가 구동되는것을 방지하려면,
try_files $uri $uri/ /index.php;
if (!-f $request_filename) { return 403; }
혹은
if (!-e $request_filename) { rewrite ^.*$ /index.php last; }
if (!-f $request_filename) { return 403; }
혹은
if (!-e $request_filename) { rewrite ^.*$ /index.php last; }
이렇게 구성해주면 됩니다.
통상적인 프레임워크를 쓰기위한 rewite 가 아래와 같이 구성되어 있으면
if ($request_filename ~* ".*\.(php)$") {
rewrite ^.*$ /index.php last;
}
if (!-e $request_filename) {
rewrite ^.*$ /index.php last;
}
상관없겠네요..rewrite ^.*$ /index.php last;
}
if (!-e $request_filename) {
rewrite ^.*$ /index.php last;
}
nginx 쓰면서 가장 보안에 주의해야할 부분입니다.
2011/03/14 16:39
[서버관련]
php-fpm 모듈을 올릴때
/usr/local/sbin/php-fpm start
아래와 같은 에러가 나면서 start 스트립트가 멈추지 않는 현상이 나타난다.
vi /usr/local/sbin/php-fpm 의 상단에
과 같이 pid의 경로를 제대로된 경로로 수정해주니 잘되었따아.. 1시간삽질;;;
/usr/local/sbin/php-fpm start
아래와 같은 에러가 나면서 start 스트립트가 멈추지 않는 현상이 나타난다.
fpm_event_loop(), line 107: libevent: entering main loop
vi /usr/local/sbin/php-fpm 의 상단에
php_fpm_BIN=/usr/local/bin/php-cgi
php_fpm_CONF=/usr/local/etc/php-fpm.conf
;php_fpm_PID=/usr/loca/logs/php-fpm.pid
php_fpm_PID=/var/run/php-fpm.pid
php_fpm_CONF=/usr/local/etc/php-fpm.conf
과 같이 pid의 경로를 제대로된 경로로 수정해주니 잘되었따아.. 1시간삽질;;;
2011/03/04 21:20
[서버관련]
nginx에서 cgi구동시
만 나올때
를 nginx.conf 에 추가해야한다.;;
No input file specified.
만 나올때
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
를 nginx.conf 에 추가해야한다.;;
2011/02/09 10:33
[서버관련]
모든 php파일에 include를 추가하지 않고, 자동으로 최상단에
특정 php파일을 include한 효과를 줄 수 있습니다.
php.ini 에
auto_prepend_file = /home/httpd/html/include/auto.php
와 같이 추가해주면 됩니다.
아파치에서는 더욱 유연하게 설정됩니다.
httpd.conf 에
php_value auto_prepend_file = /home/httpd/include/auto.php
와 같이 기술하면 되며,
특정 Directory 만 적용한다면 <Directory> 안에 기술하면 되겠네요.ㅎ
php_value auto_prepend_file = /home/httpd/include/auto.php
와 같이 기술하면 되며,
특정 Directory 만 적용한다면 <Directory> 안에 기술하면 되겠네요.ㅎ
nginx 에서는 아래와 같이 적용합니다.
fastcgi_param PHP_VALUE "auto_prepend_file=/home/httpd/include/auto.php"
아쉽게도 저는 lighttpd 를 좋아하는데. lighttpd.conf에는 지원되지 않네요


