# BEGIN LSCACHE
## LITESPEED WP CACHE PLUGIN - Do not edit the contents of this block! ##
RewriteEngine on
CacheLookup on
RewriteRule .* - [E=Cache-Control:no-autoflush]
RewriteRule litespeed/debug/.*\.log$ - [F,L]
RewriteRule \.litespeed_conf\.dat - [F,L]
### marker ASYNC start ###
RewriteCond %{REQUEST_URI} /wp-admin/admin-ajax\.php
RewriteCond %{QUERY_STRING} action=async_litespeed
RewriteRule .* - [E=noabort:1]
### marker ASYNC end ###
### marker MOBILE start ###
RewriteCond %{HTTP_USER_AGENT} Mobile|Android|Silk/|Kindle|BlackBerry|Opera\ Mini|Opera\ Mobi [NC]
RewriteRule .* - [E=Cache-Control:vary=%{ENV:LSCACHE_VARY_VALUE}+ismobile]
### marker MOBILE end ###
### marker DROPQS start ###
CacheKeyModify -qs:fbclid
CacheKeyModify -qs:gclid
CacheKeyModify -qs:utm*
CacheKeyModify -qs:_ga
### marker DROPQS end ###
## LITESPEED WP CACHE PLUGIN - Do not edit the contents of this block! ##
# END LSCACHE
# BEGIN NON_LSCACHE
## LITESPEED WP CACHE PLUGIN - Do not edit the contents of this block! ##
### marker BROWSER CACHE start ###
ExpiresActive on
ExpiresByType application/pdf A31557600
ExpiresByType image/x-icon A31557600
ExpiresByType image/vnd.microsoft.icon A31557600
ExpiresByType image/svg+xml A31557600
ExpiresByType image/jpg A31557600
ExpiresByType image/jpeg A31557600
ExpiresByType image/png A31557600
ExpiresByType image/gif A31557600
ExpiresByType image/webp A31557600
ExpiresByType image/avif A31557600
ExpiresByType video/ogg A31557600
ExpiresByType audio/ogg A31557600
ExpiresByType video/mp4 A31557600
ExpiresByType video/webm A31557600
ExpiresByType text/css A31557600
ExpiresByType text/javascript A31557600
ExpiresByType application/javascript A31557600
ExpiresByType application/x-javascript A31557600
ExpiresByType application/x-font-ttf A31557600
ExpiresByType application/x-font-woff A31557600
ExpiresByType application/font-woff A31557600
ExpiresByType application/font-woff2 A31557600
ExpiresByType application/vnd.ms-fontobject A31557600
ExpiresByType font/ttf A31557600
ExpiresByType font/otf A31557600
ExpiresByType font/woff A31557600
ExpiresByType font/woff2 A31557600
### marker BROWSER CACHE end ###
## LITESPEED WP CACHE PLUGIN - Do not edit the contents of this block! ##
# END NON_LSCACHE
# ===================================================================
# IPEN ONLINE — FINAL SECURITY LOCK (2025)
# Block ALL fake/auto-generated pages BEFORE WordPress
# Prevent ANY auto-redirect or canonical for non-real paths
# ===================================================================
RewriteEngine On
# 🔒 1. مسدود کردن تمام query stringهای مخرب — قبل از هر چیز
RewriteCond %{QUERY_STRING} (a=|do=|u=|profile|blog|feed=rss2|author=\d+|page_id=\d+) [NC,OR]
RewriteCond %{THE_REQUEST} \?(a=|do=|u=) [NC]
RewriteRule ^ - [R=403,L]
# 🔒 2. مسدود کردن مسیرهای فیک (حتی اگر بدون query string باشند)
RewriteRule ^(index\.php/)?(profile|blog|user|community|members?|wp-content/uploads/.*\.php)/? - [R=403,L,NC]
# 🔒 3. مسدود کردن مسیرهای فارسی فیک (که در Table.csv دیده شدند)
RewriteRule ^(جلد-کتاب|نمونه-طراحی-جلد|category/cover-book-blog/example-cover-book-blog/page/)/? - [R=403,L,NC]
# ===================================================================
# IPEN ONLINE — فقط redirectهای دستی و امن برای صفحات واقعی
# ===================================================================
# --- فقط اگر واقعاً نیاز به redirect باشد، اینجا بنویسید (دستی) ---
# مثال: Redirect قدیمی → جدید (خودتان اضافه کنید)
# RewriteRule ^old-page$ /new-page/ [R=301,L]
# ===================================================================
# IPEN ONLINE — Canonicalization CONTROLLED (نه اتوماتیک!)
# اینجا هیچ canonical/redirect اتوماتیکی اعمال نمیشود
# ===================================================================
# --- ۱. http → https ---
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://ipenonline.com/$1 [L,R=301]
# --- ۲. www → non-www ---
RewriteCond %{HTTP_HOST} ^www\.ipenonline\.com$ [NC]
RewriteRule ^(.*)$ https://ipenonline.com/$1 [L,R=301]
# --- ۳. حذف index.php فقط اگر query string نداشته باشد ---
RewriteCond %{THE_REQUEST} /index\.php\s [NC]
RewriteRule ^(.*?)index\.php$ /$1 [L,R=301,NE]
# --- ۴. حذف index (بدون .php) ---
RewriteCond %{THE_REQUEST} /index\s [NC]
RewriteRule ^(.*?)index$ /$1 [L,R=301,NE]
# --- ۵. اسلش پایانی فقط برای دایرکتوریهای واقعی ---
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^(.+[^/])$ https://ipenonline.com/$1/ [L,R=301]
# ===================================================================
# WordPress — فقط برای صفحات واقعی فعال شود
# ===================================================================
# BEGIN WordPress
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
# جلوگیری از پردازش URLهای غیر واقعی توسط WordPress
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
# فقط اگر URL معتبر باشد، به وردپرس برسد
RewriteRule . /index.php [L]
# END WordPress
https://ipenonline.com/post-sitemap.xml
2025-12-18T13:14:20+00:00
https://ipenonline.com/page-sitemap.xml
2025-12-18T13:16:09+00:00
https://ipenonline.com/category-sitemap.xml
2025-12-18T13:14:20+00:00
https://ipenonline.com/post_tag-sitemap.xml
2025-12-18T13:14:20+00:00