корневой каталог - www или public_html

Корневой каталог то, где все файлы сохранены (непосредственно от доступа от FTP) всегда "www" или "public_html" в зависимости от какой ОС? Или действительно ли возможно переименовать эту папку? И если так, что было бы уникально об этой папке, чтобы смочь определить его? т.е. в настоящее время я просто писал это;

my $root;
my $ftp = Net::FTP->new($DB_ftpserver, Debug => 0) 
                              or die "Cannot connect to some.host.name: $@";
$ftp->login($DB_ftpuser, $DB_ftppass) or die "Cannot login ", $ftp->message;
my @list = $ftp->dir;

if( scalar @list != 0 ) {
  foreach( @list ){
     if( $_ =~ m/www$/g ){
       $root = "www";
       last;
     }elsif( $_ =~ m/public_html$/g ){
       $root = "public_html";
       last;
     }
   }
 }

но не работал бы, если это имеет другое имя.

Любая справка очень ценится.

1
задан 04.11.2014, 10:18

3 ответа

Я буду говорить с точки зрения Apache httpd, так как это - очень популярный веб-сервер.

Корневой каталог, где все файлы сохранены, в общем называют DocumentRoot. Примите во внимание, что файлы сохранены в DocumentRoot для того, чтобы быть поданными веб-сервером, не для того, чтобы быть показанными Вам при входе на пути FTP. FTP является полностью другим протоколом, который не связан с веб-сайтами, и в этом контексте это - просто способ позволить Вам, пользователю, изменить/обновить файлы на удаленном сервере.

www / public_html каталог, что Вы говорите о в Вашем вопросе, является, вероятно, не DocumentRoot. Это - дополнительная функциональность Apache, mod_userdir модуля. Консультируйтесь с его документацией.

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

С тех пор нет никакого ограничения на UserDir, у Вас может быть что-либо там, даже foobar. Можно судить содержанием этого каталога (файлы HTML, изображения), что это может быть пользовательским каталогом, который содержит сайт, это выставляется Apache. Но я сказал бы, что, делая это автоматически со сценарием кажется ненадежным мне. Не говоря уже о том, что, например, у Вас может быть public_html каталог, который не является пользовательским каталогом, его имя, соответствующее значению по умолчанию для установки Apache UserDir, являющейся только что простым совпадением. Идеально, для оценки о каталоге, если это будет UserDir, то Вам будет нужен доступ к конфигурационному файлу веб-сервера. И обычно у Вас нет его. Поставщики веб-хостинга могут поместить самое большее определенные для пользователя журналы в Ваш корневой каталог.

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

2
ответ дан 12.12.2019, 13:20

Все это зависит от конфигурации по умолчанию сервера. Можно настроить к другому местоположению также.

В Windows это может быть:

C:\xampp\htdocs\

или

C:\vhost\public\www\

или где-нибудь отличающийся.

Принадлежит на суперпользователе, не это?

0
ответ дан 12.12.2019, 13:20

Имя настраивается в Apache (DocumentRoot - значение по умолчанию, согласно 2.2.x документация, является/usr/local/apache/htdocs). Моя машина в офисе не использует ни одну из опций, которые Вы упоминаете (бесцеремонно, я думаю, что это использует htdocs, но это некоторое время, так как я в последний раз играл с ним).

OTOH, так как Вы упоминаете FTP, возможно, Вы думаете о чем-то еще; базовый каталог все еще настраивается, все же.

0
ответ дан 12.12.2019, 13:20

Теги

Похожие вопросы