2246 번 글의 답장글: Re: Re: 언제나 좋은 답변 감사 드립니다. |
글쓴이: 산이
[홈페이지]
|
글쓴날: 2005년 01월 22일 01:35:05 토(새벽) |
조회: 1797 |
<Directory> 지시자로 설정하지 말고
<LocationMatch> 로 다음과 같이 설정하세요
<LocationMatch "^/~">
AddType text/html .html .htm
php_admin_flag engine off
</Location>
아파치 1.3 은 잘 됩니다만 2.0 은 잘 모르겠네요.
[이현철]님이 남기신 글:
>음 산이님 답변 감사합니다..
>
>그런데 php를 일반유저 홈디렉토리에서
못사용하게 하는 부분이 잘 안되서 말이죠
>>>
>>>PHP 를 off 하려면?
>>>
>>><LocationMatch "^/~">
>>> php_admin_flag engine off
>>></Location>
>>>
>>>이런식으로 설정하면 됩니다.
>>>
>>>>
>위의 산이님 설정으로 하고 나서 아파치 restart 한 후에
> http://domain.net/~user/index.html 해서
확인하면
>보통 index.html 같은것도 다른 윈도창이 뜨면서
>에러를 발생하고 있습니다.
>
>보통 위의 옵션은 php만 유저측에서 사용하게 못하도록 하는 것
같은데
>html도 에러가 나버리고 있는데요..
>몇번을 여러서버에 해봐도 같은 현상인데요
>다른 윈도우창이 뜨면서 경로가 c://자신의 컴퓨터 경로가
뜨면서 html내용이 나와 버리고 있습니다..
>
>
>아래와 같이 Directory에 제한을 걸어도 위와 같은 현상이 나는데
말이죠..
>아파치 2.0대에서는 이 옵션이 안되는지요..
>여기저기도 거의 php_admin_flag engine off 를 이용해서 제한하면
된다고
>하는데..말씀이죠..
><Directory /export/home/*/public_html>
> AllowOverride FileInfo AuthConfig Limit Indexes
> Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
> <Limit GET POST OPTIONS PROPFIND>
> Order allow,deny
> Allow from all
> </Limit>
> <LimitExcept GET POST OPTIONS PROPFIND>
> Order deny,allow
> Deny from all
> </LimitExcept>
> php_admin_flag engine off //php 제한
></Directory>
>
>
>
>한수 가르쳐 주십시요....
>
>
>
>
>[이현철]님이 남기신 글:
>
>>
>>[산이]님이 남기신 글:
>>
>>>
>>>[이현철]님이
남기신 글:
>>>
>>>>-----------------------------------------
>>>>답변자가 기본적으로 참고할 내용입니다.
>>>>- 배포판(옵션) :
>>>>- 커널버전(옵션)
:
>>>>- 데몬버전(예:apache
1.3.27) :
>>>>- 데몬설치유형(RPM/컴파일/기타)
:
>>>>-----------------------------------------
>>>>산이님 건강하시지요..
>>>>
>>>>오늘도 여전히 하나 여쭈어 볼려고 왔습니다..
>>>>
>>>>다름이 아니라 php가 버전 버그가 발표되어서 php-4.3.10으로
버젼업중에
>>>>5대정도의 서버는 이상없이 버전업이 되고 info.php를
>>>>보면 제대로 버전업된것을 확인 할수 있었는데
>>>>1대가 이상한 부분이 있어서..말이죠..
>>>>php의 make install에서 에러가 없이 갱신이 된것
같은데
>>>>php의 각 디렉토리를 확인하면 build가 제대로 되어
있고
>>>>apache의 http.conf 로 제대로 갱신되어 있는데..
>>>>
>>>>info.php로 확인하면 버전업이 안되어 있습니다..
>>>>지금 아파치랑 php 그리고 옵티마가 같이 설치되어
있습니다.
>>>>
>>>>(옵티마가 설치되어 있는경우에 php를 버젼업 할경우에 위와
같은 영향이
>>>>있는지..요..
옵티마설치된 서버에서 php버젼업을 해본적이 없었서..말이죠)
>>>>
>>>>아래 내용은 php-4.3.10의 make install 내용입니다. 에러는
없는데
>>>>Warning! 가 하나 있는데 아마도 이부분 인것
같은데..요..
>>>>
>>>>
>>>>[root@dia-net php-4.3.10]# make install
>>>>Installing PHP SAPI module: apache2handler
>>>>/usr/local/apache2/build/instdso.sh
SH_LIBTOOL='/usr/local/apache2/build/libtool
>>>>' libphp4.la /usr/local/apache2/modules
>>>>/usr/local/apache2/build/libtool --mode=install cp libphp4.la
/usr/local/apache2
>>>>/modules/
>>>>cp .libs/libphp4.lai /usr/local/apache2/modules/libphp4.la
>>>>cp .libs/libphp4.a /usr/local/apache2/modules/libphp4.a
>>>>ranlib /usr/local/apache2/modules/libphp4.a
>>>>chmod 644 /usr/local/apache2/modules/libphp4.a
>>>>libtool: install: warning: remember to run `libtool --finish
/usr/local/src/php-
>>>>4.3.10/libs'
>>>>/////////////////////////////////////
>>>>Warning! dlname not found in /usr/local/apache2/modules/libphp4.la.
>>>>///////////////////////////////////
>>>>Assuming installing a .so rather than a libtool archive.
>>>>chmod 755 /usr/local/apache2/modules/libphp4.so
>>>>[activating module `php4' in /usr/local/apache2/conf/httpd.conf]
>>>>Installing PHP CLI binary: /usr/local/bin/
>>>>Installing PHP CLI man page: /usr/local/man/man1/
>>>>Installing PEAR environment: /usr/local/lib/php/
>>>>[PEAR] Archive_Tar - already installed: 1.1
>>>>[PEAR] Console_Getopt - already installed: 1.2
>>>>[PEAR] PEAR - already installed: 1.3.2
>>>>Wrote PEAR system config file at: /usr/local/etc/pear.conf
>>>>You may want to add: /usr/local/lib/php to your php.ini include_path
>>>>[PEAR] DB - already installed: 1.6.2
>>>>[PEAR] HTTP - already installed: 1.2.2
>>>>[PEAR] Mail - already installed: 1.1.3
>>>>[PEAR] Net_SMTP - already installed: 1.2.6
>>>>[PEAR] Net_Socket - already installed: 1.0.1
>>>>[PEAR] XML_Parser - already installed: 1.0.1
>>>>[PEAR] XML_RPC - already installed: 1.1.0
>>>>Installing build environment: /usr/local/lib/php/build/
>>>>Installing header files: /usr/local/include/php/
>>>>Installing helper programs: /usr/local/bin/
>>>> program: phpize
>>>> program: php-config
>>>> program: phpextdist
>>>>
>>>>
>>>>위의 부분중에 아파치 모듈에 so로 이용할것인가 아니면 a
형태로 이용할것인가에서
문제가 생긴것이 아닌가 생각합니다만..
>>>>산이님의 의견을 듣고 싶습니다..
>>>>
>>>>
>>>>제 생각에는 아파치 설치시 정적으로 할것인가 동적으로
할것인가에서 문제가 나온것이 아닌가 생각하는데 산이님의
의견을 듣고 싶습니다.
>>>>에러가 난 서버의 아파치 설치 옵션을 보면
>>>>$ ./configure --enable-rewrite --enable-module=so
--enable-shared=yes
>>>>형태로 --enable-module=so 형태로 되어 있고
>>>>
>>>>제대로 php가 버젼업 된 아파치 서버의 설치 옵션에는
>>>>$ ./configure --prefix=/usr/local/apache2 --enable-mods-shared=all --enable-ssl
--with-ssl=/usr/local/ssl --with-z=/usr/local/lib
>>>>형태로 되어 있는데 --enable-mods-shared=all 로 구성되어
있습니다.
>>>>
>>>>아마도 여기서 나는 문제가 아닌가 하는데요..
>>>>
>>>>--enable-module=so 와 --enable-mods-shared=all 차이를 잘
모르겠습니다. 찾아보고 읽어봐도 내용은 많은데 거의
비슷하게 보이고 있어서..
>>>> 차이 점을 좀 이야기 해주십시요...
>>>>
>>>
>>>전자는 아파치에 정적으로 붙이는 옵션이고 후자는 enabled 된
모듈에
>>>대해서 모두(all) DSO 로 설치하겠다는 옵션입니다.
>>>분명한 차이가 있습니다.
>>>
>>>각각의 서버에서
>>>
>>>httpd -l
>>>
>>>로 확인해서 so 모듈이 있는지 확인해 보세요.
>>>
>>>>
>>>>하나만 더 여쭈어 보겠습니다.. 아파치와 php를 이용하는
서버에서
>>>>http://test.net/~user
이런씩으로 일반유저 user 의 개인 홈디렉토리도
>>>>php를 사용할수 있게 되어있는데 일반유저는 php를 사용치
못하게 할경우에는(서브
도메인만 php사용) 아파치 httpd.conf의 설정을 변경해주면
가능한지요?
>>>>
>>>
>>>UserDir disabled
>>>
>>>이렇게 설정하면 http://test.net/~user 이런 URL 은 사용하지
>>>못합니다.
>>>
>>>PHP 를 off 하려면?
>>>
>>><LocationMatch "^/~">
>>> php_admin_flag engine off
>>></Location>
>>>
>>>이런식으로 설정하면 됩니다.
>>>
>>>>
>>>>많은 질문에 죄송함과 산이님의 의견을 듣고 싶습니다..
그럼.. 좋은 하루되세요..
>>>
>>>========================================
>>>
>>>
>>>/usr/local/apache2/modules/libphp4.so
>>>
>>>이 파일이 갱신이 되었는지 확인해 보세요
>>>
>>>갱신이 안되었다면 install 이 실패한 경우입니다.
>>>
>>>그리고 당연히 아파치를 restart 해야겠죠.
>>
>>========================================
>
>========================================
========================================
|
이전글 : Re: 언제나 좋은 답변 감사 드립니다.
다음글 : FTP 접속된 계정에 대해 접속 끊는 방법 갈쳐주세요..
|
from 211.243.181.98
JS(Redhands)Board 0.4 +@
|