# چگونه یک فایل htaccess. درست را برای یک وب سایت وردپرس ایجاد کنیم؟

**URL:** <https://forums.7ho.st/t/%DA%86%DA%AF%D9%88%D9%86%D9%87-%DB%8C%DA%A9-%D9%81%D8%A7%DB%8C%D9%84-htaccess-%D8%AF%D8%B1%D8%B3%D8%AA-%D8%B1%D8%A7-%D8%A8%D8%B1%D8%A7%DB%8C-%DB%8C%DA%A9-%D9%88%D8%A8-%D8%B3%D8%A7%DB%8C%D8%AA-%D9%88%D8%B1%D8%AF%D9%BE%D8%B1%D8%B3-%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF-%DA%A9%D9%86%DB%8C%D9%85%D8%9F/9873>\
**Category:** وردپرس\
**Tags:** وردپرس, htaccess, سی-پنل\
**Created:** [آپریل 7، 2024، 5:36ق.ظ UTC](https://forums.7ho.st/t/%DA%86%DA%AF%D9%88%D9%86%D9%87-%DB%8C%DA%A9-%D9%81%D8%A7%DB%8C%D9%84-htaccess-%D8%AF%D8%B1%D8%B3%D8%AA-%D8%B1%D8%A7-%D8%A8%D8%B1%D8%A7%DB%8C-%DB%8C%DA%A9-%D9%88%D8%A8-%D8%B3%D8%A7%DB%8C%D8%AA-%D9%88%D8%B1%D8%AF%D9%BE%D8%B1%D8%B3-%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF-%DA%A9%D9%86%DB%8C%D9%85%D8%9F/9873 "2024-04-07T05:36:01Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![PaulVek](https://forums.7ho.st/letter_avatar_proxy/v4/letter/p/97f17d/32.png) [@PaulVek](https://forums.7ho.st/u/PaulVek)\
**Post date:** [آپریل 7، 2024، 5:36ق.ظ UTC](https://forums.7ho.st/t/%DA%86%DA%AF%D9%88%D9%86%D9%87-%DB%8C%DA%A9-%D9%81%D8%A7%DB%8C%D9%84-htaccess-%D8%AF%D8%B1%D8%B3%D8%AA-%D8%B1%D8%A7-%D8%A8%D8%B1%D8%A7%DB%8C-%DB%8C%DA%A9-%D9%88%D8%A8-%D8%B3%D8%A7%DB%8C%D8%AA-%D9%88%D8%B1%D8%AF%D9%BE%D8%B1%D8%B3-%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF-%DA%A9%D9%86%DB%8C%D9%85%D8%9F/9873/1 "2024-04-07T05:36:01Z")

</div>

در وب سایت وردپرسی من این قوانین را در فایل htaccess. تست کردم.

اگر دستورات redirect www به non www و ریدایرکت به https را در هر موقعیتی غیر از موقعیت اول و دوم قرار دهم، ریدایرکت های مورد انتظار مختل می شوند و به درستی کار نمی کنند.

**سوال اینجاست که چرا اگر این دو دستور در رتبه دوم و سوم یعنی بعد از دستورات اولیه وردپرس قرار بگیرند، به درستی کار نمی کند؟**

**خب، با توجه به اینکه ظاهراً موقعیت دستورات روی عملکرد تأثیر می گذارد، آیا مشکلی نیست که دستورات اولیه وردپرس در رتبه سوم قرار گیرند؟ (3. وردپرس)**

همچنین در هر سه دستور هم از این استفاده کردم (در زیر قرار میدهم) (چون میخواستم جدا و تمیزتر باشه) اما آیا لازم بود سه بار از آن استفاده کنم یا نه؟

```nohighlight
<IfModule rewrite_module>
     RewriteEngine On
     ...
     ...
     ...
</IfModule>

```

فایل htaccess من از 5 قسمت تشکیل شده است:

1. redirect www to non www
2. redirect to https
3. WordPress
4. LSCACHE
5. cPanel-generated handler

```nohighlight
# BEGIN redirect www to non www
<IfModule rewrite_module>
    RewriteEngine On
    RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
    RewriteRule ^(.*)$ https://%1/$1 [R=301,L]
</IfModule>
# END redirect www to non www

# BEGIN redirect to https
<IfModule rewrite_module>
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
</IfModule>
# END redirect to https

# BEGIN WordPress
# directives (lines) between "BEGIN WordPress" and "END WordPress"
# They are dynamically generated, and should only be edited by WordPress filters.
# Any changes to instructions between these pointers will be rewritten.
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

# BEGIN LSCACHE
## LITESPEED WP CACHE PLUGIN - Do not edit the contents of this block! ##
<IfModule LiteSpeed>
RewriteEngine on
CacheLookup on
RewriteRule .* - [E=Cache-Control:no-autoflush]
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 CACHE RESOURCE start ###
RewriteRule wp-content/.*/[^/]*(responsive|css|js|dynamic|loader|fonts)\.php - [E=cache-control:max-age=3600]
### marker CACHE RESOURCE end ###

### marker FAVICON start ###
RewriteRule favicon\.ico$ - [E=cache-control:max-age=86400]
### marker FAVICON end ###

### marker WEBP start ###
RewriteCond %{HTTP_ACCEPT} "image/webp"
RewriteRule .* - [E=Cache-Control:vary=%{ENV:LSCACHE_VARY_VALUE}+webp]
RewriteCond %{HTTP_USER_AGENT} iPhone.*Version/(\d{2}).*Safari
RewriteCond %1 >13
RewriteRule .* - [E=Cache-Control:vary=%{ENV:LSCACHE_VARY_VALUE}+webp]
### marker WEBP end ###

### marker DROPQS start ###
CacheKeyModify -qs:fbclid
CacheKeyModify -qs:gclid
CacheKeyModify -qs:utm*
CacheKeyModify -qs:_ga
### marker DROPQS end ###

</IfModule>
## 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 ###
<IfModule mod_expires.c>
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 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

</IfModule>
### marker BROWSER CACHE end ###

## LITESPEED WP CACHE PLUGIN - Do not edit the contents of this block! ##
# END NON_LSCACHE

# php -- BEGIN cPanel-generated handler, do not edit
# Set the “ea-php73” package as the default “PHP” programming language.
<IfModule mime_module>
  AddHandler application/x-httpd-ea-php73 .php .php7 .phtml
</IfModule>
# php -- END cPanel-generated handler, do not edit

```
