Хочете прибрати стандартний /admin/ в OpenCart і зменшити сміттєві спроби входу? Розповімо простими словами про два способи змінити адресу адмінки – перейменування папки або «віртуальний» URL через rewrite, з готовими правилами для Apache та Nginx.
→Найпопулярніші шаблони та доповнення за липень 2025 року: Мікророзмітка, ChatGPT, Відео на сервері, шаблон Mango
→Новинки липня 2025 року: Запам’ятати мене, Швидкий вхід через соцмережі, Розумні рекомендації
→Модуль Simple - один із найпопулярніших модулів для спрощення оформлення замовлень і реєстрації в OpenCart 3. Проте після його встановлення може виникнути критична помилка, пов’язана зі застарілою модифікацією шаблонізатора Twig.
→
За замовчуванням адреса адміністративної панелі OpenCart – /admin/
. Її добре знають зловмисники та різні боти. Змінити або приховати це посилання – простий спосіб зменшити сміття в логах та спроби брутфорсу. Нижче – два зрозумілих варіанти для OpenCart 1.5 / 2.x / 3.x (включно з ocStore 3.0.3.9): перейменувати папку або налаштувати «віртуальний» URL через правила веб-сервера.
/var/www/site/
) та домен (https://example.com
).DIR_STORAGE
(часто винесений за корінь сайту).admin
admin
– наприклад, у secret-admin
.admin/config.php
, вказавши новий URL і коректні шляхи.
// HTTP
define('HTTP_SERVER', 'https://example.com/secret-admin/');
// HTTPS
define('HTTPS\_SERVER', '[https://example.com/secret-admin/](https://example.com/secret-admin/)');
// DIR
define('DIR\_APPLICATION', '/var/www/site/secret-admin/');
define('DIR\_SYSTEM', '/var/www/site/system/');
define('DIR\_IMAGE', '/var/www/site/image/');
define('DIR\_STORAGE', '/var/www/site/system/storage/'); // або зовнішній шлях
define('DIR\_CATALOG', '/var/www/site/catalog/');
define('DIR\_LANGUAGE', DIR\_APPLICATION . 'language/');
define('DIR\_TEMPLATE', DIR\_APPLICATION . 'view/template/');
define('DIR\_CONFIG', DIR\_SYSTEM . 'config/');
define('DIR\_CACHE', DIR\_STORAGE . 'cache/');
define('DIR\_DOWNLOAD', DIR\_STORAGE . 'download/');
define('DIR\_LOGS', DIR\_STORAGE . 'logs/');
define('DIR\_MODIFICATION', DIR\_STORAGE . 'modification/');
define('DIR\_SESSION', DIR\_STORAGE . 'session/');
define('DIR\_UPLOAD', DIR\_STORAGE . 'upload/');
// HTTP/HTTPS
define('HTTP_SERVER', 'https://example.com/secret-admin/');
define('HTTPS_SERVER', 'https://example.com/secret-admin/');
// DIR
define('DIR\_APPLICATION', '/var/www/site/secret-admin/');
define('DIR\_SYSTEM', '/var/www/site/system/');
define('DIR\_IMAGE', '/var/www/site/image/');
define('DIR\_CATALOG', '/var/www/site/catalog/');
define('DIR\_LANGUAGE', DIR\_APPLICATION . 'language/');
define('DIR\_TEMPLATE', DIR\_APPLICATION . 'view/template/');
define('DIR\_CONFIG', DIR\_SYSTEM . 'config/');
// Інші DIR\_\* — залежно від вашої збірки (часто всередині system/storage)
// HTTP
define('HTTP_SERVER', 'https://example.com/secret-admin/');
// На фронт:
define('HTTP_CATALOG', 'https://example.com/');
// DIR
define('DIR\_APPLICATION', '/var/www/site/secret-admin/');
define('DIR\_SYSTEM', '/var/www/site/system/');
define('DIR\_IMAGE', '/var/www/site/image/');
define('DIR\_CATALOG', '/var/www/site/catalog/');
Після змін очистіть кеші (у 2.x/3.x: «Розширення – Модифікатори – Оновити»; якщо адмінка недоступна – видаліть вміст system/storage/cache
і system/storage/modification
вручну) та перевірте вхід за новою адресою.
Плюси: усе працює «з коробки», OpenCart/ocStore генерує правильні посилання.
Мінуси: потрібно пам’ятати нову назву папки і акуратно прописати шляхи.
Ідея проста: папка залишається /admin/
, але зовні ви заходите за /cp/
. Для цього змінюємо видимий HTTP_SERVER
і додаємо правила веб-сервера.
admin
як є.admin/config.php
вкажіть «видимий» URL:
// Видимі адреси
define('HTTP_SERVER', 'https://example.com/cp/');
define('HTTPS_SERVER', 'https://example.com/cp/');
// Фізичні шляхи — на реальну папку admin
define('DIR\_APPLICATION', '/var/www/site/admin/');
RewriteEngine On
# Віддаємо /cp/ із фізичного /admin/
RewriteRule ^cp(/.\*)?\$ admin\$1 \[L]
# (Необов'язково) Блокуємо прямий /admin/
RewriteRule ^admin(/.\*)?\$ - \[R=404,L]
# Видимий URL
location ^~ /cp/ {
rewrite ^/cp/(.*)$ /admin/$1 last;
}
# (Необов'язково) Блокуємо прямий /admin/
location ^\~ /admin/ {
return 404;
}
Перезапустіть веб-сервер, очистіть кеші OpenCart – і заходьте за /cp/
.
Плюси: не потрібно змінювати файлову структуру.
Мінуси: важливо правильно прописати правила, щоб не зламати існуючі редиректи.
Додайте на початок файлу /admin/.htaccess рядки:
Order deny,allow
deny from all
Allow from 1.1.1.1
де 1.1.1.1
– ваша IP-адреса.
admin
та вимкніть зайві облікові записи.HTTP_SERVER
/HTTPS_SERVER
: має бути /cp/
, а не /cp
.DIR_*
: перевірте реальний шлях до сайту.RewriteRule
та location
важливий.http://
– отримаєте зайві редиректи та попередження.admin/config.php
.location
та поверніть HTTP_SERVER
на /admin/
.