2246 번 글의 답장글: Re: 언제나 좋은 답변 감사 드립니다. |
글쓴이: 이현철
|
글쓴날: 2005년 01월 21일 18:39:34 금(저녁) |
조회: 1845 |
음 산이님 답변 감사합니다..
그런데 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: Re: 언제나 좋은 답변 감사 드립니다.
|
from 210.238.198.62
JS(Redhands)Board 0.4 +@
|