Мне интересно, есть ли более эффективный способ обслуживания большого количества переадресаций ссылок. Для справки: мой сайт получает десятки тысяч пользователей в день, и мы " глубокая ссылка " на большое количество отдельных страниц продукта на партнерских сайтах.
Чтобы «скрыть» партнерские ссылки и хранить их все в одном месте, в настоящее время я обслуживаю все наши партнерские ссылки из одного файла PHP, например, пользователь нажимает на mysite.com/go.php?id=1 и попадает на страницу на сайте продавца, к которой добавляется наш партнерский файл cookie, где вы можете купить продукт. Код, который я использую, выглядит следующим образом:
<?php
$path = array(
‘1′ => ‘http://affiliatelink1.com’,
‘2′ => ‘http://affiliatelink2.com’,
‘3′ => ‘http://affiliatelink3.com’,
);
if (array_key_exists($_GET['id'], $path))
header(‘Location: ‘ .$path[$_GET['id']]);
?>
Проблема, с которой я сталкиваюсь, заключается в том, что мы каждый день ссылаемся на множество уникальных продуктов, а php-файл теперь содержит 11K + ссылок и растет с каждым днем. Я уже заметил, что для загрузки и редактирования файла через FTP требуется много времени, поскольку его размер составляет почти 2 МБ, а ссылки на нашем сайте не работают во время загрузки файла. Я также не знаю, хорошо ли для сервера обслуживать такое количество ссылок через один php-файл - я пока не заметил каких-либо замедлений, но, безусловно, вижу, что это происходит.
Так что я ищу другой вариант. Я думал о том, чтобы просто запустить новый файл .php (например, go2.php) для размещения большего количества ссылок, поскольку go.php настолько велик, но кажется неэффективным. Должен ли я использовать базу данных для этого вместо этого? Я тоже использую Wordpress, так что я обеспокоен слишком большим использованием mySQL, и простое выполнение этого в PHP кажется более быстрым, но, опять же, я не уверен.
Мой другой вариант - найти способ динамически создавать эти партнерские ссылки, то есть создать еще один PHP-файл, который будет брать URL-адрес продукта и добавлять к нему наш партнерский код, избавляя меня от необходимости вручную обновлять php-файл со всеми эти ссылки, однако я не уверен насчет влияния на сервер, если мы обслуживаем почти 100 000 кликов в день с помощью чего-то подобного.
Есть мысли? Является ли метод, который я использую, для написания верной смерти для нашего сервера, или я должен оставить все как есть для производительности? Будет ли это делать с базой данных или динамически увеличивать нагрузку на сервер, чем простой файл php, который я сейчас использую? Любая помощь / совет будет принята с благодарностью!