Хммм, я полагаю, что ваш код находится в службе, а не в вашем контроллере? Вы не можете перенаправить из службы, но только из контроллера, поскольку контроллер отправляет окончательный ответ.
Вы должны вернуть логическое значение из вашего сервиса и перенаправить с вашего контроллера:
public function hasToGoToStart()
{
$em = $this->entityManager;
$repo_whereabouts = $em->getRepository(Whereabouts::class);
$whereabouts = $this->session->get('whereabouts');
if (($whereabouts === null) || ($whereabouts === ''))
{
return true;
}
else
{
$my_whereabouts = $repo_whereabouts->getWhereabouts($whereabouts);
if (!$my_whereabouts)
{
return true;
}
}
return false;
}
и в вашем контроллере:
if ($myService->hasToGoToStart()) {
// redirect
}
Безотносительно техники, которую Вы используете, Ваше программное обеспечение будет скопировано. Фактическая цель защиты от копирования состоит в том, чтобы препятствовать тому, чтобы честные клиенты испытали желание быть несправедливой.
минимальный метод защиты от копирования достаточно. Максимум не стоит проведенного времени.
, Кроме того, я услышал, что некоторые разработчики оказывают пользовательскую поддержку любому пользователю, который спрашивает, клиент или нет. Идея состоит в том, что счастливые пользователи могут стать верными клиентами.
"Аппаратные средства являются аппаратным ключом"
, Именно это мы всегда говорили в моем старом задании, и в некоторой степени, это также верно в моем существующем. В основном мы продали физическое оборудование для выполнения нашего программного обеспечения, которое мы выдали бесплатно. Это, вероятно, не выполнимо для всех компаний, но это - хорошее чувство, чтобы знать, что Вы не должны волноваться о пиратстве, потому что людей инвестируют в аппаратные средства, не программное обеспечение.
На настольных приложениях я использовал Громкий Шаблон (сторонний, http://www.capesoft.com/accessories/secwinsp.htm ).
С веб-приложениями, в значительной степени просто использование очевидного факта, что Пользователь должен войти в систему, и отслеживание действия. Если у них есть учетная запись, это означает, что они заплатили.
Рабочий стол намного более трудно отследить. Как был сказан, очень легок расколоться. Очень случай:
Делают это раздражающим для Хакеров, но максимально незаметным для Пользователей
Для некоторых продуктов мы (имеют к) используем аппаратные аппаратные ключи. Хотя они дают довольно хорошую защиту от копирования, они - реальная стычка для наших клиентов.
Все другое программное обеспечение защищено программным ключом. И да можно скопировать их. Но у нас есть очень хороший опыт, что клиенты не делают этого. Без ключа программа работает нормальная, только Вы не можете вычислить модель, и отключены некоторые функции печати.
Как mouviciel упомянутый, ничто не прекрасно. Стремитесь мягко поощрять пользователей, которые могли бы купить Ваш продукт, чтобы купить его и забыть о людях, которые никогда не будут.
Некоторые общие советы:
Для корпоративного программного обеспечения, лучшая вещь, которую можно сделать, помогают администраторам гарантировать, что они в границах лицензии (# экземпляров/установок, и т.д.). Предоставьте центральное место им, чтобы проверить это и мягко напомнить им, если они идут немного перед взятием больше радикальных мер. В среде большой сети лицензирование программного обеспечения может стать очень сложным для отдела IT, Делают их задание легче, и они поблагодарят Вас.
Для хорошего программного обеспечения не нужна защита. Ваше программное обеспечение будет когда-либо копироваться, никакой Мазер, какую защиту Вы выбираете.
, Таким образом, лучший способ избежать недопустимых копий состоял бы в том, чтобы сделать Ваше программное обеспечение удобным для пользователя, так, чтобы Ваши клиенты были счастливы и удовлетворены Вашим продуктом.
Есть URL для HTTP-запросов, которые я хотел бы также спрятаться.
Если ваше приложение делает запрос, нет смысла скрывать это. Запуск приложения, как Fiddler, HTTP Analyzer, или одна из десятков других бесплатных и легко доступных методов, покажет весь трафик вашего приложения.
-121--1324850-«Техническая поддержка - это ключ»
это не относится ко всем приложениям, но для сложных приложений с более высокой ценой и более низким объемом продажи, предоставляя отличную поддержку ваших клиентов Лучший способ быть уверенным, что все ваши пользователи платят.