За последние 24 часа нас посетили 14904 программиста и 1729 роботов. Сейчас ищут 496 программистов ...

PHP.ru URL Fixer

Тема в разделе "Решения, алгоритмы", создана пользователем Survivor, 9 ноя 2024.

  1. Survivor

    Survivor Новичок

    С нами с:
    8 фев 2023
    Сообщения:
    87
    Симпатии:
    17
    Вроде бы в тот раздел, если что - переместите, пожалуйста.
    Т.к. Администрация сайта забила, а меня порядком надоело все это дело исправлять ручками..
    Вот в общем-то пару строчек кода в виде расширения, тестировал мало времени, но вроде никаких проблем нет и работает как задумывалось.
    --------------
    Расширение автоматически удаляет нежелательные субдомены и корректирует ссылки.
    Выкладываю в виде zip архива и в виде кода ниже.
    1. Создаем папку php.ru на рабочем столе.
    2. В папке php.ru создаем файл manifest.json
    Добавляем в файл manifest.json
    Код (Text):
    1.  
    2. {
    3.   "manifest_version": 3,
    4.   "name": "PHP.ru URL Fixer",
    5.   "version": "1.0",
    6.   "description": "Исправляет URL-адреса на php.ru, удаляя нежелательные субдомены",
    7.   "icons": {
    8.     "16": "php.ru.png"
    9.   },
    10.   "action": {
    11.     "default_icon": {
    12.       "16": "php.ru.png"
    13.     }
    14.   },
    15.   "permissions": [
    16.     "webNavigation",
    17.     "webRequest"
    18.   ],
    19.   "host_permissions": [
    20.     "*://*.php.ru/*"
    21.   ],
    22.   "background": {
    23.     "service_worker": "background.js"
    24.   }
    25. }
    3. В папке php.ru создаем файл background.js
    Добавляем в файл background.js
    Код (Text):
    1.  
    2. chrome.webNavigation.onBeforeNavigate.addListener(
    3.   function(details)
    4.   {
    5.     const url = new URL(details.url);
    6.     // Проверяем, что домен заканчивается на php.ru
    7.     if (url.hostname.endsWith('php.ru')) {
    8.       // Извлекаем все части URL после php.ru
    9.       const path = url.pathname + url.search + url.hash;
    10.       // Создаем правильный URL
    11.       const correctedUrl = `https://php.ru${path}`;
    12.       // Если URL был изменен, выполняем перенаправление
    13.       if (details.url !== correctedUrl) {
    14.         chrome.tabs.update(details.tabId, {
    15.           url: correctedUrl
    16.         });
    17.       }
    18.     }
    19.   },
    20.   {
    21.     url: [{
    22.       hostSuffix: 'php.ru'
    23.     }]
    24.   }
    25. );
    Установка расширения:
    - Откройте Chrome/Opera или другой браузер на движке Chromium
    - Перейдите в меню "Расширения" → "Управление расширениями"
    - Включите "Режим разработчика"
    - Нажмите "Загрузить распакованное расширение"
    - Выберите созданную папку php.ru
    Примечания:
    - Расширение протестировано на Chrome
    - Должно работать во всех браузерах на движке Chromium (Opera и др.)
    - Исходный код доступен выше
     

    Вложения:

    • php.ru.zip
      Размер файла:
      1,8 КБ
      Просмотров:
      2
  2. Survivor

    Survivor Новичок

    С нами с:
    8 фев 2023
    Сообщения:
    87
    Симпатии:
    17
    Если кому интересно, а как на мобильнике? Проверенных решений нет, т.к. гугл ограничен.
    Можно решить вопрос путем кук (нужен консоль разработчика) или расширения, а также создания ссылки со спец.кодом на внешнем источнике(ваш хост)

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

    такие дела)