Соглашение об именовании URL в Twitter или Facebook .htaccess - PullRequest
3 голосов
/ 04 апреля 2010

Для моего сайта социальной сети я бы хотел создать соглашение по переименованию URL-адресов в Facebook или Twitter.

Используя в качестве примера Twitter, у них есть страницы, помеченные как twitter.com/about, и еще одна страница, помеченная как twitter.com/ndom$username rout

.

Тем не менее, как вы можете различить, скажем, пользователя, который зарегистрировался на нашем сайте, как "примерно" тогда. Отсюда мы столкнемся с конфликтом серверов между пользователем about и страницей about.

Как лучше всего справиться с этим?

Ответы [ 4 ]

2 голосов
/ 05 апреля 2010

К какому окончательному решению мы пришли, запросив страницу на нашем сервере mysite.com/user, он сначала проверил, была ли это страница, если это НЕ страница, то предполагается, что это пользователь , в этом случае он проверяет, является ли этот пользователь объектом, если нет, то он передается на нашу страницу 404.

Итак, вдобавок, мы собираемся использовать HTTP-запрос, как вы упомянули ранее, и затем, если кто-то, как пользователь "about" все еще регистрируется, для которого у нас теперь есть страница, по сути, отстой, чтобы быть им, потому что он не собираюсь увидеть его страницу.

2 голосов
/ 04 апреля 2010

Обычно вы увидите, что это реализовано, поэтому конфликты невозможны. Например, вы можете разместить всех пользователей в виртуальном каталоге / users или поддомене: mysite.com/users/msilvis или users.mysite.com/msilvis.

Я не рекомендовал бы, чтобы вы делали всех пользователей доступными через корневой каталог вашего сайта, поскольку это потенциально может помешать вам добавлять страницы. Например, предположим, что у вас еще нет страницы «о», но пользователь регистрируется и называет себя «около»; ты облажался.

Если вы все-таки решите сделать это, перед регистрацией попробуйте выполнить HTTP-запрос на свой веб-сайт на страницу, которую будет иметь пользователь. Если вы не получите 404, то что-то уже имеет это имя.

0 голосов
/ 05 апреля 2010

Если вы все еще находитесь на ранних стадиях разработки, вы можете взглянуть на PHP-инфраструктуру Kohana. Именно функции маршрутизации решают проблему, выделенную zneak и dd, вы просто определяете в своих маршрутах, что http://yoursite.com/about будет указывать на конкретный контроллер / действие, я предполагаю, что вы используете шаблон проектирования MVC, учитывая, что вам нужен твиттер как структура URL.

Надеюсь, это поможет!

РЕДАКТИРОВАТЬ: я забыл упомянуть, что это не мешает людям регистрироваться как о, это только предотвратит связь остального мира с этой страницей людей, чтобы предотвратить их, вы должны будете использовать какая-то проверка по вашим основным страницам, о чем-то, свяжитесь с т. д.

0 голосов
/ 04 апреля 2010

Я бы ограничил возможность для кого-то создавать имя пользователя, которое будет конфликтовать с существующими URL.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...