Не на 100% уверен, но попробуйте использовать ioctl()
с SIOCGIFLLADDR
:
sock = socket (AF_INET, SOCK_DGRAM, 0);
ioctl (sock, SIOCGIFLLADDR, &ifr);
close (sock);
в ifr.ifr_ifru.ifru_addr
- ваш Mac.
Посмотрите URL-адреса, которые использует StackOverflow. У них есть уникальный идентификатор, а затем у них есть SEO-дружественные вещи. Вы можете опустить SEO-дружественные вещи, и URL все еще работает.
Здесь вы делаете дьявольскую аферу, вы торгуете бизнес-целями на технологические цели.
Если бы вы спросили: «С точки зрения бизнеса и SEO, лучше ли включать уникальные идентификаторы в URL?» или не?"; Ясно, что ответом будет то, что они не будут использоваться.
Тогда возникает вопрос: насколько вы их используете, насколько это повредит вам в поисковых системах? Ответ заключается в том, что это определенно оказывает негативное влияние. Сколько еще предстоит определить.
С точки зрения «дружественного пользователю», нет, они определенно не дружественны к пользователю.
С точки зрения Google, они заявляют: «По возможности сокращайте URL-адреса, обрезая ненужные параметры».
Я не знаю о каких-либо проблемах, вызванных добавлением идентификатора в URL. Фактически это может быть чрезвычайно полезно, поскольку позволяет изменять дружественную человеку / поисковой системе часть URL-адреса, не вызывая неработающую ссылку на страницу, которую поисковая система уже проиндексировала. Используя SO в качестве примера, вот ссылка на ваш вопрос:
https://stackoverflow.com/questions/820493/you-can-put-any-text-you-want-here
В этом нет ничего плохого. Все большее число служб начали использовать гибридное решение, как уже указывал Пол Томблин . В дополнение к SO, Tumblr также использует этот шаблон (возможно, он был первым).
Кроме того, в некоторых службах, таких как Новости Google ), URL должен содержать уникальный числовой идентификатор.
Определенно поможет избавление от параметризованного URL. По моему опыту, включение идентификатора не повредит и не поможет, если в URL нет пар «ключ = значение».
Use something like modrewrite to parse URLs before they reach your server. So you could convert a slug like http://oorl.com/99942/My-Friendly-Text-For-Search-Engines/ into http://oorl.com/lookup.php?id=99942. This will also let you change slug and keywords used to optimize certain links without damaging functionality.
Будьте осторожны , разрешив отображение страницы с использованием того же метода, что и переполнение стека.
http://stackoverflow.com/questions/820493/random-text-can-cause-problems
Черные шляпы могут стать причиной штрафа за дублирование контента для конкурентов с длинным хвостом (поверьте мне).
Вот две вещи, которые вы можете сделать, чтобы защитить себя от этого.
Пример:
http://stackoverflow.com/questions/820493/random-text-can-cause-problems
301 ->http://stackoverflow.com/questions/820493/can-an-seo-friendly-url-contain-a-unique-id
У меня есть два, на первый взгляд, противоречивых момента: -
Никто не смотрит на URL! Опыт «обучил» пользователей браузера отображать содержимое поля «Адрес» как невидимое, они знают, что содержимое будет любыми двумя: «нечитаемым», «бессмысленным» и «запутанным», следовательно, они просто полностью игнорируют его.
Использование String, которое можно легко преобразовать в целое число, может дать небольшое преимущество в производительности по сравнению с использованием более длинной строки, которую немного сложнее (hash () по сравнению с to_int ()) преобразовать в целое число. Однако в контексте среднего веб-приложения любая разница в производительности будет незначительной.
Я бы посоветовал придерживаться того, что вам удобно.
Да, и на самом деле это больше SEO-оптимизация, если включить число в свой URL-адрес, поскольку это означает для Google, что вы постоянно обновляете свой контент.
Я совершенно уверен, что индексирование в Новостях Google будет намного сложнее, если к вашим URL-адресам каким-либо образом не прикреплен возрастающий номер.