Intereting Posts
Как вы используете echo внутри строки таблицы html? Изменение конфиденциальности старых сообщений Facebook с помощью Graph API конвертировать любую строку даты в метку времени без часового пояса Как добавить ограничение на запрос обновления в Zend Framework? Чтение и запись на / из последовательного устройства через USB на Linux с помощью Perl или PHP Когда использовать статические классы в PHP? Как внутреннее соединение работает с отношениями «многие ко многим» с помощью Doctrine и Symfony2 Предотвратите прямой доступ к php-скрипту, но разрешите с index.html обновление cakephp с 1,3 до 2 аутентификации Чтение значения из URL-адреса в PHP Я хочу узнать простейший код обмена сообщениями, используя php используя PHP для заполнения PDF-файла Как обеспечить ввод пользователем CSS, а не вредоносного кода? Динамически связывать параметры mysqli_stmt, а затем связывать результат (PHP) Преобразование PDF в JPG-образ с помощью PHP

Удаление идентификатора из URL-адреса CakePHP?

Эй, ребята! Работая над новым приложением Cake и задаваясь вопросом, есть ли в любом случае для меня удаление маршрутизации ID-in-URL из Cake. Возможно, передав ID в POST? Наличие идентификатора, переданного в качестве URL-адреса, кажется просто дрянным и опасным. Благодаря!

«Дрянная»? Это стандартная практика и идеальное решение для идентификации в URL-адресе. Посмотрите URL-адрес вашего вопроса:

http://stackoverflow.com/questions/4638262/removing-id-from-cakephp-url ^^^^^^^ id 

Кроме того, абсолютно ничего не опасно показывать идентификатор в URL-адресе. Это просто номер, который ничего не значит. Если пользователь может сделать что-то «плохое», только зная этот идентификатор, ваше приложение разбито и небезопасно, а не механизм передачи id.

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

Некоторые люди предпочитают использовать пули вместо идентификаторов первичного ключа. Это removing-id-from-cakephp-url -адреса этой страницы. Взгляните на SluggableBehavior .

Однако пули могут меняться. Следовательно, наличие первичного ключа в вашем URL-адресе полезна, если вы хотите иметь постоянную ссылку. StackOverflow делает так, чтобы он мог поддерживать как перманентную связь с другими сайтами, так и по причинам SEO. 🙂

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

Какое тебе дело? URL-адреса оптимизированы по причинам SEO, ID не имеет значения, если он не слишком длинный. Если последнее, подумайте об использовании более короткого с числами и буквами в них, это будет так же трудно догадаться, как длинный с просто цифрами.

Если вы не используете GET и не указываете параметры в URL-адресе, ваши пользователи не смогут скопировать-вставить местоположение.