Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Как изменить права доступа к файлу?

367
31 марта 2008 года
Meatcoins
303 / / 18.01.2006
Сервер на Linux.
Получается такая ошибка из-за того, что gb.txt на этом сервере открыт только на чтение!
 
Код:
Warning: fopen(/var/www/vhosts/mysite.ru/httpdocs/gb/gb.txt) [function.fopen]: failed to open stream: Permission denied in /var/www/vhosts/mysite.ru/httpdocs/gb/My.php on line 52

Её вызывает такой код:
 
Код:
$path=dirname(__FILE__).$gbpath;
$handle=fopen($path,"r+");
fclose($handle);

Написал такой script и засунул его на сервер:
Код:
<?php
$gbpath="/gb.txt";
$path=dirname(__FILE__).$gbpath;
echo $path."<br>";
$handle=fopen($path,"r");
$str=fread($handle,filesize($path));
fclose($handle);
echo $str;
/*
$b=chmod($path,0777);
if ($b===false){
    echo "Error!";
}
*/
$perms=fileperms($path);
echo "<br><b>".$perms."</b><br>";

$bu1=is_readable($path);
if ($bu1==true){
    echo "Readable! <br>";
}
if ($bu1==false){
    echo "Not Readable! <br>";
}
$bu2=is_writeable($path);
if ($bu2==true){
    echo "Writeable! <br>";
}
if ($bu2==false){
    echo "Not Writeable! <br>";
}
$bu3=is_executable($path);
if ($bu3==true){
    echo "Executable! <br>";
}
if ($bu3==false){
    echo "Not Executable! <br>";
}
?>

Получаем:
 
Код:
/var/www/vhosts/mysite.ru/httpdocs/gb/gb.txt
&&&...
33188
Readable!
Not Writeable!
Not Executable!

Вопрос:
Можно ли как-то изменить права на доступ к файлам самому?
Или надо с тем, кто домен предоставляет, договариваться об этом?
21K
31 марта 2008 года
per%cent
39 / / 05.10.2007
под виндой я обычно total commander-ом менял
зы: а chmod() видимо просто запрещено использовать в скриптах, можно было бы еще через system() попробовать, но эта функция скорее всего тоже запрещена...
367
31 марта 2008 года
Meatcoins
303 / / 18.01.2006
А Far'ом можно эти атрибуты из командной строки изменить?
13
31 марта 2008 года
RussianSpy
3.0K / / 04.07.2006
FAR'ом можно, но не из командной строки (протокол-то скорее всего у тебя FTP или SFTP).

Выделяешь файлы или директорию, нажимаешь CTRL+A - и вперед задавать права.
24K
31 марта 2008 года
ostgals
53 / / 27.08.2007
Far'ом файлики можно удаленно просмотреть только черех FTP, а он может и не дать изменить права доступа к файлу, особливо если закачка этих файлов осуществлялась через скрипт.

Выход: юзать PHP-функцию chmod - скрипты обычно имеют больше прав, чем юзер FTP.
21K
01 апреля 2008 года
per%cent
39 / / 05.10.2007
Цитата: ostgals
Выход: юзать PHP-функцию chmod - скрипты обычно имеют больше прав, чем юзер FTP.


ну дык ета функция нехочет юзаться....

зы: может через .htaccess можно поставить скриптам побольше прав, но в этом не уверен, т.к. в .htaccess есче покачто неразбираюсь

2
01 апреля 2008 года
squirL
5.6K / / 13.08.2003
Цитата: ostgals
скрипты обычно имеют больше прав, чем юзер FTP.


:) с чего бы это вдруг? на вменяемом хостинге - скрипты имеют столько же прав, сколько и пользователь FTP.

367
01 апреля 2008 года
Meatcoins
303 / / 18.01.2006
[quote=RussianSpy]
Выделяешь файлы или директорию, нажимаешь CTRL+A - и вперед задавать права.
[/quote]
Всё здорово! Работает! Задал права на Read и Write одному файлику - теперь можно в него писать, т.е. это счётчики, гостевые и т.д.
Здорово!
А где-нибудь есть описание этих "горячих" кнопок Far'а?
24K
01 апреля 2008 года
ostgals
53 / / 27.08.2007
Видать, не повезло мне в жизни:
у трех из четырех известных и доступных мне хостингов FTP-юзеры имеют меньше прав, чем скрипты :D
2
01 апреля 2008 года
squirL
5.6K / / 13.08.2003
Цитата: ostgals
Видать, не повезло мне в жизни:
у трех из четырех известных и доступных мне хостингов FTP-юзеры имеют меньше прав, чем скрипты :D



это как это так? они исполняются под разными пользователями? :)

24K
01 апреля 2008 года
ostgals
53 / / 27.08.2007
Цитата: squirL
это как это так? они исполняются под разными пользователями? :)



К настройкам серверов я доступа не имею, конечно...
Но все как-то очень похоже именно на это :)

Когда через скрипт на сервер загружаются файлы, то при просмотре через FTP они имеют доступ rw-------, при этом владельцем файлов являюсь не я. Следовательно, через FTP я не могу ни прочитать их, ни стереть, хоть они и отображаются.

А скрипт может с ними делать все, что угодно.

15
02 апреля 2008 года
shaelf
2.7K / / 04.05.2005
2squirL Да, большая часть хостеров делает на пых www:www, а на юзера либо nick:www, либо вообще nick:nick. Из-за этого возникают проблемы... Если закачать файл и скриптом изменить, но при этом не выставить права (опять же скриптом), то ты этот файл даже удалить не сможешь. Я с таким сталкивался неоднократно уже.
2
02 апреля 2008 года
squirL
5.6K / / 13.08.2003
shaelf, ostgals
да, я понял, что к чему. именно поэтому я и писал -
Цитата:
на вменяемом хостинге


на нормальном хостинге - скрипты и по FTP и из под PHP доступны под одним пользователем.

15
02 апреля 2008 года
shaelf
2.7K / / 04.05.2005
Полностью согласен, но такой хостинг нужно поискать:)
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог