What is www and public_html directory in my folder?
The public_html directory is the folder to place in web-readable files. This means that public_html is the folder where you put all website files which you want to appear when someone types your main domain. Files placed below the public_html folder will not be visible on the web. The www folder is what is called a symlink. This points to the public_html folder and generally is used as a shorthand is cgi scripts for the path. Instead of using the path /home/yourusername/public_html you can use /home/yourusername/www. The www directory is simply a symbolic link to the public_html directory. So anything you place in either directory will be identical when viewed from the other directory on the server. One is usually set up as an alias for the other meaning that it doesn’t matter which of the two you use because they both point to the same folder.
public_html folder
The public_html folder is the web root for your primary domain name. when someone types your domain name into their browser, whatever is in your public_html directory is what will be shown to them. We can explain this using an example: If you have a default filename like index.html or default.html inside your public_html folder, then when someone call your domain name it will display that page. If you don’t have any default file in your public_html directory, then a list of files in the public_html folder will be shown. You can create addon domains and sub domains in your account and if you have added an addon domain called myaddon.com then it will use the subfolder similar to /public_html/myaddon.com/or if you are added a sub domain called mysubdomain.com then it will use the subfolder similar to /public_html/mysubdomain.com/
In Shared hosting accounts, you will get only one cPanel account, which is why all addon domains are subfolders of the public_html folder. If you do not want the additional domains to be subfolders of the public_html, then go with the reseller, VPS or dedicated hosting is a better solution since you can put each domain in its own cPanel to keep it separate from other domains.
How to access the public_html folder?
You can access your public_html folder from your cPanel interface. Please follow the below given steps to know about how to access your public_html folder from your cPanel account.
1) Login to your cPanel account.
2) Navigate to Files >> File Manager.
3) You can see the public_html folder on your File Manager page.
The public_html folder should always have 0750 permissions. All folders inside the public_html folder should have 0755 permissions. All files inside the public_html folder should have 0644 permissions.
If you need any further help, please do reach our support department.
Как получить абсолютный путь к папке public_html?
Проблема в том, что я должен написать скрипт, который может находиться в папке public_html или подпапке в папке public_html. Сценарий должен сохранять загруженные файлы в папку в каталоге public_html (например, изображения). Другими словами, скажем, что мой файл – test.php, и путь к нему
/home/user/public_html/test/test.php.
/home/user/public_html/images
где файлы, загруженные через test.php, должны быть сохранены. Я не знаю, где будет запускаться файл test.php. Например, он может быть на пути
/home/user/public_html/test/another-dir/test.php
Как получить путь к папке с изображениями, не зная, где будет файл test.php?
то, что я нашел сегодня, после прочтения этого вопроса и продолжения моего googlesurf:
Где находится файл, который вы используете? Если он находится в вашей общедоступной папке html, вы можете сделать echo dirname(__FILE__);
Предположим, что show_images.php находится в папках, а корень сайта – public_html , поэтому:
echo dirname(__DIR__); // prints '/home/public_html/' echo dirname(__FILE__); // prints '/home/public_html/images'
Всякий раз, когда вам нужна какая-либо информация о конфигурации, вы можете использовать phpinfo() .
поместите anyfile в каталоги, которые вы хотите найти, в этом случае поместите «root» в public_html
И используйте эту функцию
и получить значение, вызвав его
И он вернется, например, dir php script
/home/user/public_html/test/another-dir/test.php
поэтому $ pathToRoot будет
Из любопытства, почему бы вам просто не использовать URL-адрес для указанной папки?
Предполагая, что папка никогда не изменяет местоположение, это был бы самый простой способ сделать это.
с функцией preg_replace, чтобы найти абсолютный путь от __FILE__ вы можете легко найти что-нибудь домашнее. Здесь короткий мой код:
$ path_image_you_want = preg_replace (‘# / public_html /([^/]+?)/.*#’, ‘/ public_html / $ 1 / images «, __FILE__ );
Это очень старый, но я наткнулся на него, и это сработало для меня.
Вы также можете использовать dirname в dirname, чтобы добраться туда, где вы хотите быть.
Для Joomla модули всегда будут установлены в /public_html/modules/mod_modulename/
Таким образом, изнутри файла в папке модуля, чтобы добраться до установочного корня Joomla на любом сервере, я мог бы использовать: $path = dirname(dirname(dirname(__FILE__)));
То же самое касается WordPress, где плагины всегда находятся в wp-content/plugins/
Надеюсь, это поможет кому-то.
Как получить абсолютный путь к папке public_html?
Проблема в том, что я должен написать script, который может находиться в папке public_html или вложенной папке в папке public_html. script должен сохранять загруженные файлы в папку в каталоге public_html (например, изображения). Другими словами, скажем, что мой файл — test.php, а путь к нему —
/home/user/public_html/test/test.php.
/home/user/public_html/images
где файлы, загруженные через test.php, должны быть сохранены. Я не знаю, где будет запускаться файл test.php. Например, он может быть на пути
/home/user/public_html/test/another-dir/test.php
Задайте вопрос, на который вы действительно хотите получить ответ, а не вопрос, который, по вашему мнению , ответит на него
9 ответов
то, что я нашел сегодня, прочитав этот вопрос и продолжив свой googlesurf:
Где находится файл, который вы используете? Если он находится в вашей общедоступной папке html, вы можете сделать echo dirname(__FILE__);
Я не знаю, где он будет запущен. Это проблема. Я хочу сделать это портативным. Он должен быть в состоянии запустить его где угодно, но папка, к которой мне нужно получить доступ, будет внутри папки public_html.
Будет ли он всегда называться публичным HTML? потому что вы можете сделать: $folder = dirname(__FILE__); while (basename($folder) != ‘public_html’) $folder = dirname($folder); и это поможет вам, но если вы запускаете это каждый раз, когда страница загружается? это отстой — плюс, он нуждается в некоторой проверке, чтобы убедиться, что вы не зацикливаетесь бесконечно (если public_html не найден). ps извините за задержку с ответом .. я только что увидел этот комментарий)
Предположим, что show_images.php находится в папке images , а корень сайта — public_html , поэтому:
echo dirname(__DIR__); // prints '/home/public_html/' echo dirname(__FILE__); // prints '/home/public_html/images'
Всякий раз, когда вам нужна какая-либо информация о конфигурации, вы можете использовать phpinfo() .
поместите anyfile в каталоги, которые вы хотите найти, в этом случае поместите «root» в public_html
И используйте эту функцию
и получить значение, вызвав его
И он вернется, например, dir php script есть
/home/user/public_html/test/another-dir/test.php
Это тот, который вам нужен?
У меня нет доступа к серверу. Поэтому я не могу разместить «корневой» файл. То, что я пишу, это плагин. Спасибо, в любом случае. Я хочу знать, возможно ли это сделать только с помощью php-кода. Удивительно, что не существует простого способа сделать это.
тогда, может быть, вы можете сделать дикую догадку, добавив «../» к файлу, который вы хотите найти на изображениях, например «../images/this.jpg» .. если не получится, попробуйте «../. ./images/this.jpg «и так далее . как только вы его получили .. его можно использовать ..
Это супер старый, но я наткнулся на него, и это сработало для меня.
Из любопытства, почему бы вам просто не использовать URL-адрес для указанной папки?
Предполагая, что папка никогда не меняет местоположение, это был бы самый простой способ сделать это.
Я хочу получить путь «/ home / user / public_html / images». Проблема в том, что «пользователь» может измениться. Поэтому я не могу жестко закодировать его (имя каталога public_html также может быть другим).
@Can’t Не могу сказать: у вас есть доступ к имени пользователя? Без этого то, что вы спрашиваете, выглядит невозможным, и с этим, вы не можете просто написать «/ home / $ user / public_html / images»?
Путь может вообще не содержать имя пользователя. Что мне нужно, это путь к каталогу, из которого файлы обслуживаются.
@Can’t Не могу сказать: Итак, какая информация у вас есть? Как вы решаете, куда-то идти? Проблема с этим вопросом заключается в том, что вы запрашиваете магический способ получить путь к различным папкам, которые никак не определены. Насколько я понимаю, ваши скрипты вызываются вошедшими в систему пользователями, верно? Что ж, при входе в систему сохраните пути пользователя в $ _SESSION и используйте их каждый раз, когда вам нужно выполнить операцию (не забывая, конечно, проверить, что пользователь имеет право выполнять любую операцию, которую он выполняет).
Информация, которая у меня есть, это имя папки «images». Мой вопрос о том, «как получить абсолютный путь к каталогу, из которого обслуживаются файлы». Если этот путь скажет $ x, то мой путь будет $ x. «/ Images»
@Can’t Не могу сказать: в этом случае у вас нет способа сделать это. Какие есть несколько папок с изображениями на сервере? Как вы собираетесь решить, какой из них правильный? Я сильно подозреваю, что вы пытаетесь решить не ту проблему. Является ли ваше программное обеспечение чем-то, что будет установлено на различных серверах вне вашего контроля? Создайте сценарий установки и используйте его, чтобы настроить пути к папкам, либо создав папку, либо попросив пользователя указать путь к существующей папке. Если он находится на сервере, которым вы можете управлять, просто создайте нужные вам папки и используйте их. Не угадай