Перейти к публикации
View in the app

A better way to browse. Learn more.

Дизайн и модификация Invision Community

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Права на FTP папки

Опубликовано:

Не могу закачать файлы модификации по ftp в некоторые папки. Я хозяин форума, у меня все права.

 

Например, не могу закачать файл (любой) в папку

public_html/sources/components_public

 

Закачивание не происходит. Пишет, что нет прав (550 install_21.php: Permission denied). Хотя, в корень папки форума закачать могу.

 

Пытаюсь поменять права на папку на 777 - не выходит.

 

Что я делаю не так, подскажите, пожалуйста.

 

Форум 2.1.7 русский.

Изменено пользователем root108

Рекомендованные сообщения

Опубликовано:
Я хозяин форума, у меня все права.

Но не хозяин папки.

 

Закачивание не происходит. Пишет, что нет прав (550 install_21.php: Permission denied). Хотя, в корень папки форума закачать могу.

Если папка создавалась скриптом, то у нее владелец не вы, а например web.

 

Пытаюсь поменять права на папку на 777 - не выходит.

А как меняете? Через ftp? Если вы не root, у вас не хватить прав.

 

Что я делаю не так, подскажите, пожалуйста.

Проблема не IPB. А хостинга. Если у вас есть нормальная панель, на хостинге, то владельца директории, можете поменять через нее. Если нет, то просите хостера.

 

Или как вариант, php скрипт -- chmod.php

<?php
function chmod_R($path, $perm) {

  $handle = opendir($path);
  while ( false !== ($file = readdir($handle)) ) {
 if ( ($file !== ".") && ($file !== "..") ) {
   if ( is_file($path."/".$file) ) {
	 chmod($path . "/" . $file, $perm);
   }
   else {
	 chmod($path . "/" . $file, $perm);
	 chmod_R($path . "/" . $file, $perm);
   }
 }
  }
  closedir($handle);
}

$path = $_SERVER["QUERY_STRING"];

if ( $path{0} != "/" ) {
$path = $_SERVER["DOCUMENT_ROOT"] . "/" . $path;
}

chmod_R($path, 0777);
echo $path;
?>

 

Размещаете в корне и вызываете http://ВАШ_САЙТ/chmod.php?путь_к_нужной_директории

Опубликовано:
  • Автор
А как меняете? Через ftp? Если вы не root, у вас не хватить прав.

 

Я пытаюсь поменять права через программу ftp. Я владелец хостинга и зашел по фтп как root.

Попытаюсь поменять права через панель управления хостингом. А вообще - это странная ситуация, что через программу поменять права не получается. Щас, кстати, на папку components_public стоит cmod 755, а на папку sources стоит cmod 755 также.

 

Это может принципиально влиять на заливку файла в любую из этих папок и какой должен быть cmod? 777?

Опубликовано:
  • Автор

Через панель управления хостингом также не получается поменять права.

Это может зависеть от того, что форум в данный момент запущен (не выключен) или нет? Может какая-то защита самого форума срабатывает?

 

С помощью вашего скрипта тоже не получается - пишет

 

Warning: chmod() [function.chmod]: Operation not permitted in /home/russian/имя_сайта/html/chmod.php on line 11

Изменено пользователем root108

Опубликовано:
  • Автор

Проблема решилась после того, как я создал на хостинге отдельный ftp доступ к форуму. До этого использовался рутовый ftp доступ. Хотя, cтранно всё это. :)

Изменено пользователем root108

Опубликовано:
Я пытаюсь поменять права через программу ftp.

какую?

 

Я владелец хостинга

гм...

 

и зашел по фтп как root.

по фтп нельзя ходит как root. Это очень и очень плохо с точки зрения безопастности.

 

Это может принципиально влиять на заливку файла в любую из этих папок и какой должен быть cmod? 777?

В вашем случае важна не только команда chmod, которая устанавливает права доступа но и chown которая меняет владельца. Если владелец другой, то нужны права 777. Если нет, то 775 нормально.

 

Это может зависеть от того, что форум в данный момент запущен (не выключен) или нет? Может какая-то защита самого форума срабатывает?

Не зависит. Операционная среда управляет форумом, а не наоборот.

 

Проблема решилась после того, как я создал на хостинге отдельный ftp доступ к форуму. До этого использовался рутовый ftp доступ. Хотя, cтранно всё это. :)

Самое странное, что есть рутовый ftp доступ. Вас еще не ломали?

Опубликовано:
  • Автор

А что тут странного?! Я купил хостинг (виртуальный, но не шаринг) у хостера. На нем у меня несколько сайтов. Для некоторых есть отдельные ftp эккаунты, а также можно, отключая отдельный ftp эккаунт, пользоваться основным. И наоборот. Если включен отдельнный ftp экканут для сайта, то, заходя под рутовым ftp эккаунтом, в этот сайт уже попасть нельзя.Так панель управления устроена у хостера.

 

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

 

Собственно, вопрос такой: почему я не смог поменять права, заходя с общего ftp доступа, а смог только когда перевел данный сайт на отдельный ftp доступ? Это команда chown или что-то еще? И где ее смотреть?

 

Программой пользуюсь Far и Ipswitch WS_Ftp Pro. Я сам все эти сайты и админю.

Изменено пользователем root108

Опубликовано:
  • Автор

Возможно, это кому то поможет, кто не так искушен в настройках форума IPB.

Я задал следующий фопрос в техподдержку хостинга:

 

Почему я, зайдя с общего ftp доступа (логин russian) не мог поменять

права cmod на папки сайта, ведь никаких настроек в панели управления

хостином я не менял, а также на других сайтах под логином russian

такой проблемы нет? Получилось поменять лишь когда был создан

отдельный ftp доступ.

 

Вот, что ответил саппорт с хостинга:

 

Вероятнее всего этот каталог у Вас был создан из CMS или скриптом, и соответственно

имел владельца - apache. Вы изменили административного пользователя,

система автоматически изменила все права для сайта на ваш логин.

 

Таким образом, все-таки дело в самом устройстве и процессе инсталляции форума.

Изменено пользователем root108

Опубликовано:
А что тут странного?! Я купил хостинг (виртуальный, но не шаринг) у хостера. На нем у меня несколько сайтов.

VDS. Угу. У меня их несколько. :)

 

Для некоторых есть отдельные ftp эккаунты, а также можно, отключая отдельный ftp эккаунт, пользоваться основным. И наоборот. Если включен отдельнный ftp экканут для сайта, то, заходя под рутовым ftp эккаунтом, в этот сайт уже попасть нельзя.

Как все запущенно ...

 

Так панель управления устроена у хостера.

А если не секрет, название панели.

 

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

Если у вас полноценный VDS, то за всем следите вы. За безопасностью, бекапом.... За всем. Хостер дает только канал и ресурсы.

 

Собственно, вопрос такой: почему я не смог поменять права, заходя с общего ftp доступа, а смог только когда перевел данный сайт на отдельный ftp доступ? Это команда chown или что-то еще? И где ее смотреть?

У вас есть ssh доступ?

 

Почему я, зайдя с общего ftp доступа (логин r....) не мог поменять

права cmod на папки сайта

Ваш логин не root. Если вы root, вы меняете везде и все. Но и одной командой, так же можете убить все.

 

Вероятнее всего этот каталог у Вас был создан из CMS или скриптом, и соответственно

имел владельца - apache

А я о чем писал?

В разных системах это называется по разному. Где web, где apache, где www или что-то подобное. Но смысл один владелец система, а не вы.

 

Вы изменили административного пользователя,

система автоматически изменила все права для сайта на ваш логин.

ВЕСЕЛО. При такой автоматизации, можно полностью настроенный сайт, уложить в даун.

Мне очень хочется узнать имя хостера. На всякий случай.

 

Таким образом, все-таки дело в самом устройстве и процессе инсталляции форума.

Нет, нет и еще раз нет. Это принципы раздачи прав Unix - подобных систем. Владелец тот, кто его создал.

А там еще есть и групповая политика. :)

Влезайте в книги по Unix.

Создайте аккаунт или войдите в него для комментирования

Сейчас на странице 0

  • Нет пользователей, просматривающих эту страницу.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.