ورود | ثبت نام
captcha
با ورود و یا ثبت نام در آیتک استودیو شما شرایط و قوانین استفاده از سرویس‌های سایت و قوانین حریم خصوصی آن را می‌پذیرید.
جستجو پیشرفته محصولات
ورود | ثبت نام
captcha
با ورود و یا ثبت نام در آیتک استودیو شما شرایط و قوانین استفاده از سرویس‌های سایت و قوانین حریم خصوصی آن را می‌پذیرید.
ورود | ثبت نام
captcha
با ورود و یا ثبت نام در آیتک استودیو شما شرایط و قوانین استفاده از سرویس‌های سایت و قوانین حریم خصوصی آن را می‌پذیرید.

نصب وردپرس در پوشه اختصاصی و هاید کردن مسیرها برای امنیت و ظاهر حرفه‌ای

نصب وردپرس در پوشه اختصاصی و هاید کردن مسیرها برای امنیت و ظاهر حرفه‌ای

مقدمه

وردپرس یک سیستم مدیریت محتوا قدرتمند است، اما به دلیل محبوبیت زیاد، هدف هکرها و ربات‌های خودکار قرار می‌گیرد. بسیاری از سایت‌ها، مسیر پیش‌فرض وردپرس مثل /wp-admin، /wp-content/plugins و /wp-login.php را بدون تغییر رها می‌کنند، که این موضوع خطر نفوذ و حملات خودکار را افزایش می‌دهد.

در این آموزش، گام‌به‌گام یاد می‌گیریم:

  • نصب وردپرس در پوشه اختصاصی (administrator)
  • لود قالب‌ها از پوشه assets
  • آپلود فایل‌ها از یک ساب‌دامین (files.example.com)
  • مخفی کردن مسیرهای وردپرس از دید کاربران و ربات‌ها
  • افزایش امنیت سایت بدون تغییر هسته وردپرس

گام اول: آماده‌سازی پوشه‌ها

  1. در public_html پوشه‌های زیر را بسازید:
public_html/
├── index.php
├── .htaccess
├── assets/      ← قالب‌ها و فایل‌های CSS/JS
└── files/       ← آپلودهای مدیا (ساب‌دامین)
  1. وردپرس را داخل پوشه administrator نصب کنید:
public_html/administrator/
├── wp-admin/
├── wp-includes/
├── wp-content/
├── wp-config.php
├── wp-login.php
└── ...

گام دوم: ایجاد ساب‌دامین برای فایل‌ها

  1. روی هاست یک ساب‌دامین بسازید:
files.example.com → مسیر public_html/files
  1. اطمینان حاصل کنید که این مسیر قابل دسترس است و وردپرس می‌تواند فایل‌ها را در آن آپلود کند.

گام سوم: تغییر فایل wp-config.php

فایل wp-config.php داخل پوشه administrator را باز کنید و تغییرات زیر را اعمال کنید:

/* مسیر سایت و وردپرس */
define('WP_SITEURL', 'https://example.com/administrator');
define('WP_HOME', 'https://example.com');

/* مسیر قالب‌ها */
define('TEMPLATEPATH', dirname(__FILE__) . '/../assets');
define('STYLESHEETPATH', dirname(__FILE__) . '/../assets');

/* مسیر آپلودها روی ساب‌دامین */
function custom_upload_dir($dirs) {
    $dirs['baseurl'] = 'https://files.example.com';
    $dirs['basedir'] = dirname(__FILE__) . '/../files';
    return $dirs;
}
add_filter('upload_dir', 'custom_upload_dir');

⚠️ توجه: dirname(__FILE__) . '/../' مسیر یک سطح بالاتر از administrator است، یعنی همان public_html.

گام چهارم: تنظیم فایل index.php

در public_html/index.php کد زیر را قرار دهید تا وردپرس از پوشه administrator لود شود:

<?php
/* Loads the WordPress Environment */
require( dirname( __FILE__ ) . '/administrator/wp-blog-header.php' );

گام پنجم: تنظیم فایل .htaccess

در public_html/.htaccess:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /

# مسدود کردن دسترسی مستقیم به administrator
RewriteRule ^administrator/ - [R=404,L]

# قوانین وردپرس برای URL های زیبا
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

در پوشه administrator

یک .htaccess دیگر برای جلوگیری از مشاهده فایل‌ها بسازید:

Options -Indexes
Order deny,allow
Deny from all

گام ششم: آپلود قالب و فایل‌ها

  • تمام فایل‌های قالب را داخل public_html/assets قرار دهید.
  • فایل‌های آپلود شده و مدیا به طور خودکار روی ساب‌دامین files.example.com لود می‌شوند.

گام هفتم: تست و بررسی

  1. وارد سایت شوید:
    https://example.com
    
    • سایت به‌طور کامل نمایش داده می‌شود.
  2. بررسی مسیر administrator:
    https://example.com/administrator/
    
    • صفحه ۴۰۴ نمایش داده می‌شود.
  3. بررسی سورس سایت و تب Network مرورگر:
    • مسیر پلاگین‌ها دیده نمی‌شود
    • قالب از /assets لود می‌شود
    • مدیا از files.example.com لود می‌شود

مزایا این روش

  • فرانت‌اند سایت کاملاً شبیه سایت برنامه‌نویسی شده به نظر می‌رسد
  • مسیرهای وردپرس (wp-admin, plugins) برای کاربران و ربات‌ها مخفی می‌شود
  • آپلودها از ساب‌دامین جدا لود می‌شوند → امنیت و سرعت بالا
  • مدیریت سایت همچنان با وردپرس انجام می‌شود

محدودیت‌ها و نکات امنیتی

  • این روش نفوذ کامل را تضمین نمی‌کند.
  • هکرهای حرفه‌ای هنوز می‌توانند از طریق آسیب‌پذیری قالب یا افزونه نفوذ کنند.
  • توصیه می‌شود اقدامات مکمل امنیتی:
    1. محدود کردن دسترسی به wp-admin با IP یا Basic Auth
    2. HTTPS و هدرهای امنیتی
    3. غیرفعال کردن REST API و XML-RPC برای کاربران ناشناس
    4. مانیتورینگ و اسکن امنیتی
    5. بکاپ‌گیری منظم

نتیجه‌گیری

با اجرای این روش، سایت وردپرسی شما:

  • ظاهر کاملاً سفارشی و تمیز پیدا می‌کند
  • مسیرهای پیش‌فرض وردپرس مخفی می‌شوند
  • مدیریت وردپرس بدون دردسر و امن انجام می‌شود

این روش یکی از بهترین تکنیک‌ها برای مخفی کردن وردپرس و جلوگیری از حملات خودکار است و با اعمال محدودیت‌های امنیتی تکمیلی می‌توان تقریباً سایت را به سطحی بسیار امن رساند.

 

 

دیدگاهتان را بنویسید