아파치 설정에 관해서..

kimes의 이미지

아파치의 userdir모듈을 이용해서..

localhost/~user이런식으로 접근하게 햇는데요..
~user/public_html및의 php 어플에서
파일을 생성하게끔했는데

그게 user소유의 파일이 아니라
www-data소유의 파일이 되버리네요..

어떻게 설정을 바꿔줘야 하나요?

aNsITAte의 이미지

당연히 웹상에서 php를 실행해서 파일을 생성하면 www-data로 실행됩니다.

아파치를 통해서 생성이 되기때문에 apache에서 외부 이용자의 id로 사용하는

www-data or nobody

같은 소유주로 생성이 될 텐데요.

그냥 이렇게 생성된 파일을

접근할 수 있는 방법은

web_chown.php
<?
	//$cmd = "chmod -R 777 /home/httpd/html/pds/*";
	$cmd = "chown foo -R *";
	@exec($cmd);
	echo "mod changed";
?>

처럼 php 파일을 만들어서 웹상에서 변경해주면 될 듯합니다.

그립다는 것은 아직도 네가 내 안에 남아 있다는 뜻이다.
그립다는 것은 지금은 너를 볼 수 없다는 뜻이다.
볼 수는 없지만 보이지 않는 내 안 어느 곳에 네가 남아 있다는 뜻이다.
-이정하의 《혼자 사랑한다는 것은》중에서-

익명 사용자의 이미지

www-data가 무슨 큰 권한이 있다고

지가 생성한 파일을 다른 유저의 소유로

만들 수 있겠습니까?

제 생각에는 suexec 등의 방법을 고려해야

할 듯 합니다만!

kimes의 이미지

애초에 생성될 당시부터 다른 한 유져의 소유로 생성되게는 할수 없는건가요?

aNsITAte의 이미지

chown 은 -_-;; 권한 에러가 나네요 ;;

그립다는 것은 아직도 네가 내 안에 남아 있다는 뜻이다.
그립다는 것은 지금은 너를 볼 수 없다는 뜻이다.
볼 수는 없지만 보이지 않는 내 안 어느 곳에 네가 남아 있다는 뜻이다.
-이정하의 《혼자 사랑한다는 것은》중에서-

sio4의 이미지

kimes wrote:
애초에 생성될 당시부터 다른 한 유져의 소유로 생성되게는 할수 없는건가요?

뭣때문에 그러는지 몰라서 적합한 답이 뭘지 모르겠습니다만,

어쨌든 "다른 한 사용자"가 "특정 누구"라면 아예 그 사용자 권한으로 웹서버를 운영하는 방법이 있겠지만 그것을 원하는 것은 아닌것 같습니다.

웹 프로세스가 필요에 따라 "어떤 사용자"의 소유로 파일을 만든다는 것은 바람직한 일도 아닐 것입니다.

일반적으로, 누군가(웹프로세스가 되었던 다른 동료 사용자가 되었든)가 내 소유의 공간에 파일을 만들어주고 그것을 내가 수정할 수 있어야 하는 경우라면, 그리고 꼭 그 파일이 내 소유일 필요는 없다면 다음과 같은 방법으로 처리할 수 있습니다.

  $ mkdir share
  $ cd share
  $ chmod 2777 .
  $ ls -al
  drwxrwsrwx    2 sio4     sio4         4.0K  7월 19 10:00 ./
  drwxr-xr-x   78 sio4     sio4         8.0K  7월 19 10:00 ../
  $
  

이 장소에 누군가 파일을 만들고 난 후,

  $ ls -l
  -rw-rw-r--    1 test     sio4            5  7월 19 09:40 file_by_test
  $
  

이 파일은 비록 내 파일은 아니지만 내 그룹의 파일이고 그룹에 대한 읽고 쓰기 권한이 있기 때문에 제가 수정하거나 할 수 있습니다.
물론 그래봤자 제 파일은 아니죠.

꼭 내 파일로 만들어야 하고 단순히 단방향 흐름만 필요한 것이라면, (웹의 예에서 누군가 올려주기만 하고 그것을 직접적으로 받아갈 필요는 없다면) 좀 우습지만 다음의 방법으로 완전한 "내 파일"을 만들 수 있습니다.

  $ ls -al
  drwxrwxrwx    2 sio4     sio4         4.0K  7월 19 10:00 ./
  drwxr-xr-x   78 sio4     sio4         8.0K  7월 19 10:00 ../
  -rw-r--r--    1 test     test            0  7월 19 09:38 test_file
  $ cp test_file tmp; rm test_file; mv tmp test_file
  $ ls -l
  -rw-r--r--    1 sio4     sio4            0  7월 19 09:40 test_file
  $
  

좀 우끼지만 :-) 이렇게 (예전의 그 파일이 아닌, 그러나 이름과 내용은 같은)"내 파일"을 만들 수는 있습니다. 위의 작업을 사용자가 cron으로 돌리면 자동화할 수도 있고요.

--
"The love you take is equal to the love you make." The End, by Beatles

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.