Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> chmody kilka pytań
ultra_18
post
Post #1





Grupa: Zarejestrowani
Postów: 71
Pomógł: 4
Dołączył: 30.10.2008

Ostrzeżenie: (0%)
-----


Witam , od niedawna mam problemy z chmodami i tu moje kilka pytań :
1. czy są jakieś funkcje sprawdzające chmody oprócz is_writable , is_readable?
2. czy jest jakaś funkcja zmieniająca chmody?
3. Dlaczego polecenie `ls /home/plik.txt` może być wykonane na moim serwie a `chmod 777 /home/plik.txt` nie? Co trzeba zrobić żeby mógł wykonywac te polecenie oraz inne np kopiowanie ,usuwanie, zmiana nazwy za pomoca przegladarki.

4. Zaważyłem że na pewnym cmsie można zapisywać dane do pliku nawet jeżeli ma chmody 644 a u siebie na serwie musze mieć 777 inaczej nie ruszy :/ co trzeba zrobić aby móc zapisywac plik nawet z chmodami 644.


Z góry dzieki za odpowiedzi (IMG:http://forum.php.pl/style_emoticons/default/wstydnis.gif)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
jareeny
post
Post #2





Grupa: Zarejestrowani
Postów: 226
Pomógł: 23
Dołączył: 2.10.2007
Skąd: Słupsk

Ostrzeżenie: (0%)
-----


Ad 4

Pewnie przy zmianie zawartości pliku ten cms zmienia chmody na 777 a po tem znow na 644

Ad 3

Cytat
Co trzeba zrobić żeby mógł wykonywac te polecenie oraz inne np kopiowanie ,usuwanie, zmiana nazwy za pomoca przegladarki.


Poznać odpowiednie funkcje i troche mysleć (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

Ad 2

http://pl.php.net/chmod
Go to the top of the page
+Quote Post
ultra_18
post
Post #3





Grupa: Zarejestrowani
Postów: 71
Pomógł: 4
Dołączył: 30.10.2008

Ostrzeżenie: (0%)
-----


Cytat(jareeny @ 8.11.2008, 21:48:24 ) *
Ad 4
Pewnie przy zmianie zawartości pliku ten cms zmienia chmody na 777 a po tem znow na 644

troche zbyt piękne żeby było prawdziwe, gdyby tak było to ten sam cms podczas instalacji nie sprawdzał czy pliki sa możliwe do zapisania funkcja is_writable z operatorem błedu @ i po zakonczeniu instalacji nie wysietlalby komunikatu że trzeba zmienić dla bezpieczeństwa chmodów dla pliku xxx na 644

Cytat(jareeny @ 8.11.2008, 21:48:24 ) *


poznałem już wcześniej tą funkcje tylko że linijka
chmod("plik.txt", 0755);
wystetla blad
Warning: chmod() [function.chmod]: Operation not permitted in ...
Go to the top of the page
+Quote Post
jareeny
post
Post #4





Grupa: Zarejestrowani
Postów: 226
Pomógł: 23
Dołączył: 2.10.2007
Skąd: Słupsk

Ostrzeżenie: (0%)
-----


Cytat
chmod("plik.txt", 0755);
wystetla blad
Warning: chmod() [function.chmod]: Operation not permitted in ...


w komentarzach do funkcji chmod() jest na przykład takie coś:

If you get a warning like chmod(): Operation not permitted in ...

You can use the ftp_site() function to send a CHMOD command through.
  1. <?php
  2.  
  3.  $ftp_details['ftp_user_name'] = $row['username'];
  4.  $ftp_details['ftp_user_pass'] = $row['password'];
  5.  $ftp_details['ftp_root'] = '/public_html/';
  6.  $ftp_details['ftp_server'] = 'ftp'.$_SERVER['HTTP_HOST'];
  7.  
  8.  function chmod_11oo10($path, $mod, $ftp_details)
  9.  {
  10.      // extract ftp details (array keys as variable names)
  11.      extract ($ftp_details);
  12.      
  13.      // set up basic connection
  14.      $conn_id = ftp_connect($ftp_server);
  15.      
  16.      // login with username and password
  17.      $login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
  18.      
  19.      // try to chmod $path directory
  20.      if (ftp_site($conn_id, 'CHMOD '.$mod.' '.$ftp_root.$path) !== false) {
  21.          $success=TRUE;
  22.      }
  23.      else {
  24.          $success=FALSE;
  25.      }
  26.  
  27.      // close the connection
  28.      ftp_close($conn_id);
  29.      return $success;
  30.  }
  31.  ?>


The key thing to remember is that the document root and the ftp root are not the same.
e.g. document root may be "/home/folder/public_html/"
but the ftp root might be "/public_html/"

Hope this helps someone. You might need this solution if you are on a shared server.
Go to the top of the page
+Quote Post
ultra_18
post
Post #5





Grupa: Zarejestrowani
Postów: 71
Pomógł: 4
Dołączył: 30.10.2008

Ostrzeżenie: (0%)
-----


ok jereny pomogłeś zadziałało dałem pomógł jednak jest to "półśrodek" i teraz bardziej zależy mi na odpowiedzi czemu nie mogę wykonywac poleceń systemowych pomimo:


safe_mode Off
disable_functions No value
open_basedir (puste)

wersja php:
PHP Version 5.2.0-8+etch11


Jak by ktoś umiał pomóc to mogę podac inne ustawienia konfiguracyjne.

Ten post edytował ultra_18 9.11.2008, 11:29:33
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 3.10.2025 - 00:39