Динамические пользовательские каталоги - PullRequest
0 голосов
/ 31 октября 2010

Когда пользователь регистрируется, мне интересно, как создать для него динамический каталог (который покажет их профиль), такой как Facebook / MySpace.

Я хочу, чтобы каталог был таким же, как его имя пользователя.Имя пользователя хранится в базе данных.

Используемые технологии

База данных: MySQL

Внешний интерфейс: PHP

Я рассмотрел использование команды PHP MKDIR для создания отдельного каталога, но я не хочу, чтобы FTP переполнялся папками

Ответы [ 2 ]

0 голосов
/ 31 октября 2010

Facebook не предоставляет пользователям свой собственный каталог.Предоставление пользователю своего собственного каталога требует много ресурсов сервера, много усилий на бэкэнде, и после того, как у вас будет несколько миллионов пользователей, беспорядок в таблице размещения файлов приведет к ужасной загрузке страницы.Затем примите во внимание все потраченное впустую дисковое пространство, так как жесткие диски работают в системе подкачки, И вам потребуется файл index.html для каждого каталога ...

Вместо этого Facebook пишет строку вФайл .htaccess.Когда пользователь говорит, что хочет www.facebook.com/username, Facebook добавляет следующее:

RewriteRule username profile.php?id=<user id>

Есть даже лучшие способы сделать это.Вы можете перенаправить ВСЕ на parse_request.php, что будет определять, запрашиваете ли вы конкретную страницу пользователя или запрашивает статическую страницу (например, welcome.php), которая не должна изменяться.

0 голосов
/ 31 октября 2010

Если ваш код работает под Apache, вы должны заглянуть в mod_rewrite и сделать виртуальные «папки».

http://httpd.apache.org/docs/2.0/mod/mod_rewrite.html

...