.htaccess pcfg_openfile: unable to check htaccess file, ensure it is readable

리눅스/APACHE|2015. 1. 16. 16:59
반응형

아파치 오류에 아래와 같은 오류 메세지가 발생하면서, 브라우저에서는 403 에러가 뜰 경우

(당시 서버 버전 CentOS 6.4)


.htaccess pcfg_openfile: unable to check htaccess file, ensure it is readable


selinux 를 중지 시키면 됩니다.

아래는 일시적으로 disabled 시키는 방법입니다.


[root@sysdocu ~]# setenforce 0


리부팅 후에도 적용시키고자 할때, /etc/sysconfig/selinux 파일을 열어 설정값을 수정해줍니다.


SELINUX=disabled


리부팅 후에도 동일 증상이 발생 될경우


/etc/rc.d/rc.local 에 등록하여 부팅시 자동으로 명령이 내려질수 있도록 합니다.


* 참고 : 이 외에도 .htaccess 가 존재하는 디렉토리의 퍼미션 문제,

            httpd.conf 의 Directory 부분에 'Deny from all' 을 'Allow from all' 으로 해결하는 경우도 있습니다.


반응형

댓글()

resin 설치

리눅스/APACHE|2015. 1. 16. 16:58
반응형

apache 연동이 아닌 resin 단독으로만 웹서버를 구현하는 방법입니다.


1. 설치

# cd /usr/local/src

# wget caucho.com/download/resin-4.0.36.tar.gz

tar xvzf resin-4.0.36.tar.gz

# cd resin-4.0.36

# ./configure --with-java-home=/usr/java/jdk1.6.0_23

# make

# make install



2. 설정


기본으로 구동되는 포트 8080 을 80으로 변경합니다.


# vi /etc/resin/resin.properties


web.http 80

app.http 80


기본 소스 디렉토리는 /var/resin/doc 입니다.

이것을 사용자 디렉토리로 변경 합니다.


# vi /etc/resin/resin.xml


<cluster id="app">

이 사이에 있는 host 를 수정합니다.

</cluster>


    <host id="" root-directory=".">

      <!--

         - webapps can be overridden/extended in the resin.xml

        -->

    <web-app id="/" root-directory="webapps/ROOT"/>

    </host>


에서 web-app 부분을 아래와 같이 변경합니다.


    <web-app id="/" root-directory="/home/sysdocu/public_html"/>



3. 구동

# /etc/init.d/resin start



※ 참고

메모리에 따른 설정값을 수정합니다.

(테스트 당시 서버의 메모리 : 8G)


아래와 같이 수정을 해주었습니다.

기본값보다 값을 높였을뿐 잘된것인지 모르겠습니다.


# vi /etc/resin/resin.properties


jvm_args  : -Xmx4096m -XX:MaxPermSize=1024m

jvm_mode    : -server


port_thread_max   : 1024

accept_thread_max : 128

accept_thread_min : 16


반응형

댓글()

.htaccess 사용 못하게 하기

리눅스/APACHE|2015. 1. 16. 16:58
반응형

httpd.conf 파일의 <Directory> 항목에 아래 옵션을 추가 또는 변경합니다.

 

AllowOverride None

반응형

댓글()

nginx 메모리 사용량

리눅스/APACHE|2015. 1. 16. 16:58
반응형
#!/bin/bash

nginx total 메모리 사용량
ps aux | grep nginx | awk '{print $6}' | awk '{total= total +$1} END {print total/1024}' >> apache_all.txt

nginx 구동중인 프로세스 갯수
ps aux | grep nginx | wc -l>> apache_process.txt
 
total 사용량 / 프로세스 갯수 => nginx 1개당 메모리 사용량 

total 메모리 / nginx 1개당 메모리 사용량 => nginx  최대 프로세스 갯수 
 
평균 메모리 1G 당 nginx 600 개 프로세스 구동 가능
 


반응형

댓글()

npm ERR! Error: No compatible version found: source-map@'>=0.1.7- <0.2.0-'

리눅스/APACHE|2015. 1. 16. 16:57
반응형

npm ERR! error installing uglify-js@2.2.5
npm ERR! error installing app@0.1.0

npm ERR! Error: No compatible version found: source-map@'>=0.1.7- <0.2.0-'
npm ERR! Valid install targets:
npm ERR! ["0.0.0","0.1.0","0.1.1","0.1.2","0.1.3"]
npm ERR!     at installTargetsError (/usr/share/npm/lib/cache.js:488:10)
npm ERR!     at next_ (/usr/share/npm/lib/cache.js:438:17)
npm ERR!     at next (/usr/share/npm/lib/cache.js:415:44)
npm ERR!     at /usr/share/npm/lib/cache.js:408:5
npm ERR!     at saved (/usr/share/npm/lib/utils/npm-registry-client/get.js:147:7)
npm ERR!     at Object.oncomplete (/usr/lib/nodejs/graceful-fs.js:230:7)
npm ERR! You may report this log at:
npm ERR!     <http://bugs.debian.org/npm>
npm ERR! or use
npm ERR!     reportbug --attach /home/neulwon/public_html/node_root/npm-debug.log npm
npm ERR!
npm ERR! System Linux 3.2.0-29-generic
npm ERR! command "node" "/usr/bin/npm" "install" "app"
npm ERR! cwd /home/neulwon/public_html/node_root
npm ERR! node -v v0.6.12
npm ERR! npm -v 1.1.4
npm ERR! message No compatible version found: source-map@'>=0.1.7- <0.2.0-'
npm ERR! message Valid install targets:
npm ERR! message ["0.0.0","0.1.0","0.1.1","0.1.2","0.1.3"]
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR!     /home/neulwon/public_html/node_root/npm-debug.log
npm not ok
 

 

위와같이 버전의 차이로 uglify-js 가 설치되지 않는다면 아래 두가지 방법으로 해결이 가능합니다.

 

1) node 최신버전 설치

# sudo apt-get update

# sudo apt-get install git-core curl build-essential openssl libssl-dev

# git clone https://github.com/joyent/node.git && cd node

# ./configure

# make

# sudo make install

# node -v

# curl http://npmjs.org/install.sh | sudo sh

# npm -v 
 

[출처] http://www.giantflyingsaucer.com/blog/?p=2775

 

  

2. uglify-js 1 버전대로 설치

# npm install uglify-js@1 -g 

 

[참고] 미짓 (http://mezeet.blogspot.kr/2013/02/1210.html)

반응형

댓글()

없는파일 접근시 404에러가 아니고 403에러가 뜰때

리눅스/APACHE|2015. 1. 16. 16:57
반응형

httpd.conf 파일에서 아래처럼 모듈(mod_autoindex)을 주석처리하고 apache 를 재시작 하면 됩니다.

 

#LoadModule autoindex_module modules/mod_autoindex.so 

반응형

댓글()

특정 디렉토리의 특정 확장자 접근시 접속차단하기.(PHP 실행방지)

리눅스/APACHE|2015. 1. 16. 16:57
반응형

넘즈유틸리티등 게시판들을 보면 파일첨부를 위한 디렉토리들이 포함되어 있습니다.
일반적으로 apache 웹서버데몬때문에, 소유자외에 읽고 쓸수 있는 퍼미션을 모두 할당하는 편이지요.

이 디렉토리들에서 특정 확장자로 웹에서 접근시 접속을 차단하는 방법입니다.

.php , .html , .htm 파일로 접근시 접속을 차단한다. 
아래 내용을 .htaccess 파일로 작성후 접속차단을 할 디렉토리에 업로드 하십시요.
(하위 디렉토리까지 일괄 적용됩니다.)

<FilesMatch ".(cgi|pl|php|htm|html)$"> 
  Order allow,deny 
  Deny from all
</FilesMatch>



[출처] 커뮤니티/IT (http://numz.net/business/14229.html)

반응형

댓글()

node.js iconv 모듈 에러

리눅스/APACHE|2015. 1. 16. 16:56
반응형

npm으로 iconv 설치가 완료되었더라도 require('iconv') 시 아래와 같은 에러가 발생 할 수 있음.
node.js:201 
throw e; // process.nextTick error, or 'error' event on first tick 

Error: Cannot find module 'iconv' 

npm 으로 모듈이 설치되면 모듈 폴더 하위에 package.json 파일이 존재하며, 
해당 파일에서 main 파일을 지정하게 되어 있음. 
iconv 의 main 파일의 경로 설정이 잘못 되어 있어 모듈을 찾지 못하는 에러가 발생함. 

- main 파일 확인 
# grep "main" package.json 
"main": "./build/Release/iconv", 

- 파일이 존재하지 않음 
# ll ./build/Release/iconv 
ls: cannot access ./build/Release/iconv: No such file or directory 

실제 main 실행파일은 node_modules/iconv/iconv.node 바이너리 파일로 존재 함. 

package.json의 main 파일을 iconv.node 로 변경하면 모듈을 인식 함. 
edit node_modules/iconv/package.json 
"main": "./iconv.node", 
 

[출처] BoyoYa Blog | boyo (http://blog.boyo.kr/entry/nodejs-iconv-%EB%AA%A8%EB%93%88-%EC%97%90%EB%9F%AC)

반응형

댓글()

node.js 설치시 path 설정

리눅스/APACHE|2015. 1. 16. 16:56
반응형

node.js를 리눅스에서 설치하는 경우 패키지로 하거나 소스를 컴파일 하게 됩니다.

소스로 컴파일 하는 경우 혹은 패키지로 설치했을때 npm을 이용해 패키지를 설치하였으나
지속적으로 해당 패키지를 찾을 수 없다는 에러를 보는 경우가 있는데
이때는 모듈을 관리하는 디렉토리를 환경변수로 지정해 주어야 합니다.

일단 윈도우 설치 버전에서는 이런 문제가 없었는데,
CentOS6 64bit 랑 Ubuntu 12.04 서버 버전에서 문제가 똑같이 발생 했습니다. node.js 버전은 모두 0.8.16 기준입니다.

다음 코드를 /etc/profile 혹은 /etc/enviroment 혹은 .bash_profile에 넣습니다.(저는 /etc/profile에 넣고 # source /etc/profile 해주었습니다.)

export NODE_PATH=$NODE_PATH:/usr/local/lib/node_modules:/usr/lib/node_modules

이후에 어디서 실행해도 알아서 모듈 패키지를 찾아서 실행하게 됩니다.

 

[출처] {webkini_blog;} | Bravo (http://webkini.tistory.com/105)

반응형

댓글()

npm ERR! Error: failed to fetch from registry: express

리눅스/APACHE|2015. 1. 16. 16:56
반응형

root@ubuntu:/home/sysdocu/node_root# npm install -g express
npm http GET https://registry.npmjs.org/express
npm http 408 https://registry.npmjs.org/express
npm ERR! registry error parsing json

npm ERR! Error: failed to fetch from registry: express
npm ERR!     at /usr/share/npm/lib/utils/npm-registry-client/get.js:139:12
npm ERR!     at cb (/usr/share/npm/lib/utils/npm-registry-client/request.js:31:9)
npm ERR!     at Request._callback (/usr/share/npm/lib/utils/npm-registry-client/request.js:153:14)
npm ERR!     at Request.callback (/usr/lib/nodejs/request/main.js:119:22)
npm ERR!     at Request.<anonymous> (/usr/lib/nodejs/request/main.js:525:16)
npm ERR!     at Request.emit (events.js:67:17)
npm ERR!     at IncomingMessage.<anonymous> (/usr/lib/nodejs/request/main.js:484:14)
npm ERR!     at IncomingMessage.emit (events.js:88:20)
npm ERR!     at HTTPParser.onMessageComplete (http.js:137:23)
npm ERR!     at CleartextStream.ondata (http.js:1150:24)
npm ERR! You may report this log at:
npm ERR!     <http://bugs.debian.org/npm>
npm ERR! or use
npm ERR!     reportbug --attach /home/sysdocu/node_root/npm-debug.log npm
npm ERR!
npm ERR! System Linux 3.2.0-29-generic-pae
npm ERR! command "node" "/usr/bin/npm" "install" "-g" "express"
npm ERR! cwd /home/sysdocu/node_root
npm ERR! node -v v0.6.12
npm ERR! npm -v 1.1.4
npm ERR! message failed to fetch from registry: express
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR!     /home/sysdocu/node_root/npm-debug.log
npm not ok
root@ubuntu:/home/sysdocu/node_root#
 

위와 같은 에러 메세지 출력시 아래 명령 이후 다시 설치시도를 해봅니다.

 

root@ubuntu:/home/sysdocu/node_rootnpm config set registry http://registry.npmjs.org/

반응형

댓글()

우분투 APM 설치

리눅스/APACHE|2015. 1. 16. 16:56
반응형

1. 아파치 설치

# apt -y install apache2
 

2. MySQL 설치

# apt -y install mysql-server
 

3. PHP 설치

# apt -y install php

 

반응형

댓글()