Pooyan Afzali

تاپیک مقالات آموزشی htaccess جهت ارتقای امنیت, پایداری و بهبود عملکرد سایت

134 پست در این موضوع

برای وارد کردن کدها از چیزی استفاده نکنم؟ مانند # یا / در اول و آخرشون؟ همینطوری پشت هم بذارم برن؟

Share this post


Link to post
Share on other sites
آموزش ووکامرس قالب جوملا قالب وردپرس قالب رایگان وردپرس قالب رایگان جوملا هاست نامحدود هاست جوملا هاست لاراول هاست وردپرس هاست ارزان هاست ربات تلگرام خرید دامنه آموزش ساخت ربات تلگرام با php آموزش لاراول آموزش cPanel آموزش php آموزش فرم ساز RSform آموزش ساخت ربات جذب ممبر آموزش ساخت ربات دوستیابی آموزش ساخت ربات فروشگاهی برای ووکامرس آموزش طراحی سایت داینامیک با php آموزش بخش پشتیبانی با rsticket

درود

در انتهای هر کد اگه ## رو بزنید و یک خط اینتر بزنید بهتره و د ها رو قاطی نمیکنید و میتونید برای هر کد توضیح بنویسید که بعدا دچار مشکل نشید

Share this post


Link to post
Share on other sites
درود بنا به درخواست یکی از کاربران عزیز یک نمونه فایل htaccess قرار میدم که تنظیمات خوبی در اون اعمال شده هم بلحاظ امنیتی و هم کارایی سایت و جلوگیری از بوتر ها که داخل چند سایت هم دیدم اینو و معمولا ازش استفاده میشه

البته اینم بگم فایل htaccess هر سایت میتونه خاص اون سایت باشه چرا که نظیمات هر سایتی شرایط خاص خودشو داره و این فایل ممکنه روی سایت شما بعضی قسمتهاش اجرا نشه چون تنظیمات سرور ها مختلفت هست و یا ممکنه

با اعمال این فایل سایتتون دیگه بالا نیاد پس حتما حتما از فایل htacess پیشفرض سایتتون یک پشتیبان بگیرید و اگر در زمینه این کد ها اطلاعای ندارید چایگزین نکنید

این فایل صرفا یک نمونه هست همین وبس و به این معنی نیست که کامل هست و بدون نقص

Section 1: Main Settings and Options # # Options: ALL,ExecCGI,FollowSymLinks,Includes,IncludesNOEXEC,Indexes # MultiViews, SymLinksIfOwnerMatch. # # Main Defaults. # Options +ExecCGI -Indexes DirectoryIndex index.html index.htm index.php DefaultLanguage en-US AddDefaultCharset UTF-8 ServerSignature Off ### ENVIRONMENT VARIABLES ### #SetEnv PHPRC /webroot/includes #SetEnv TZ America/Indianapolis #SetEnv SERVER_ADMIN webmaster@domain.tld ### MIME TYPES ### AddType video/x-flv .flv AddType application/x-shockwave-flash .swf AddType image/x-icon .ico ### FORCE FILE TO DOWNLOAD INSTEAD OF APPEAR IN BROWSER ### #-> http://www.htaccesselite.com/htaccess/addtype-addhandler-action-vf6.html #AddType application/octet-stream .mov .mp3 .zip ### ERRORDOCUMENTS ### ErrorDocument 404 "404 error" ErrorDocument 400 "400 error" ErrorDocument 401 "401 error" ErrorDocument 403 "403 error" ErrorDocument 405 "405 error" ErrorDocument 406 "406 error" ErrorDocument 409 "409 error" ErrorDocument 413 "413 error" ErrorDocument 414 "414 error" ErrorDocument 500 "500 error" ErrorDocument 501 "501 error" #=============================================================================# # SCRIPTING, ACTION, ADDHANDLER #=============================================================================# # Handlers be builtin, included in a module, or added with Action directive # default-handler: default, handles static content (core) # send-as-is: Send file with HTTP headers (mod_asis) # cgi-script: treat file as CGI script (mod_cgi) # imap-file: Parse as an imagemap rule file (mod_imap) # server-info: Get server config info (mod_info) # server-status: Get server status report (mod_status) # type-map: type map file for content negotiation (mod_negotiation) # fastcgi-script: treat file as fastcgi script (mod_fastcgi) ########### ### PARSE AS CGI ### #AddHandler cgi-script .cgi .pl .spl ### RUN PHP AS APACHE MODULE ### #AddHandler application/x-httpd-php .php .htm ### RUN PHP AS CGI ### #AddHandler php-cgi .php .htm ### CGI PHP WRAPPER FOR CUSTOM PHP.INI ### #AddHandler phpini-cgi .php .htm #Action phpini-cgi /cgi-bin/php5-custom-ini.cgi ### FAST-CGI SETUP WITH PHP-CGI WRAPPER FOR CUSTOM PHP.INI ### #AddHandler fastcgi-script .fcgi #AddHandler php-cgi .php .htm #Action php-cgi /cgi-bin/php5-wrapper.fcgi ### CUSTOM PHP CGI BINARY SETUP ### #AddHandler php-cgi .php .htm #Action php-cgi /cgi-bin/php.cgi ### PROCESS SPECIFIC FILETYPES WITH CGI-SCRIPT ### #Action image/gif /cgi-bin/img-create.cgi ### CREATE CUSTOM HANDLER FOR SPECIFIC FILE EXTENSIONS ### #AddHandler custom-processor .ssp #Action custom-processor /cgi-bin/myprocessor.cgi #=============================================================================# # HEADERS, CACHING AND OPTIMIZATION #=============================================================================# #-> http://www.htaccesselite.com/htaccess/cache-control-http-headers-vt65.html # 300 5 M # 2700 45 M # 3600 1 H # 54000 15 H # 86400 1 D # 518400 6 D # 604800 1 W # 1814400 3 W # 2419200 1 M # 26611200 11 M # 29030400 1 Y (never expire) ########### #### HEADER CACHING #### #-> http://www.htaccesselite.com/htaccess/caching-using-header-vt2.html #<FilesMatch "\.(flv|gif|jpg|jpeg|png|ico)$"> # Header set Cache-Control "max-age=2592000" #</FilesMatch> #<FilesMatch "\.(js|css|pdf|swf)$"> # Header set Cache-Control "max-age=604800" #</FilesMatch> #<FilesMatch "\.(html|htm|txt)$"> # Header set Cache-Control "max-age=600" #</FilesMatch> #<FilesMatch "\.(pl|php|cgi|spl|scgi|fcgi)$"> # Header unset Cache-Control #</FilesMatch> ### ALTERNATE EXPIRES CACHING ### #-> htaccesselite.com/d/use-htaccess-to-speed-up-your-site-discussion-vt67.html #ExpiresActive On #ExpiresDefault A604800 #ExpiresByType image/x-icon A2592000 #ExpiresByType application/x-javascript A2592000 #ExpiresByType text/css A2592000 #ExpiresByType text/html A300 #<FilesMatch "\.(pl|php|cgi|spl|scgi|fcgi)$"> # ExpiresActive Off #</FilesMatch> ### META HTTP-EQUIV REPLACEMENTS ### #<FilesMatch "\.(html|htm|php)$"> # Header set imagetoolbar "no" #</FilesMatch> #=============================================================================# # REWRITES AND REDIRECTS #=============================================================================# # REQUEST METHODS: GET,POST,PUT,DELETE,CONNECT,OPTIONS,PATCH,PROPFIND, # PROPPATCH,MKCOL,COPY,MOVE,LOCK,UNLOCK ########### ### REWRITE DEFAULTS ### #RewriteEngine On #RewriteBase / ### REQUIRE SUBDOMAIN ### #RewriteCond %{HTTP_HOST} !^$ #RewriteCond %{HTTP_HOST} !^subdomain\.domain\.tld$ [NC] #RewriteRule ^/(.*)$ http://subdomain.domain.tld/$1 [L,R=301] ### SEO REWRITES ### #RewriteRule ^(.*)/ve/(.*)$ $1/voluntary-employee/$2 [L,R=301] #RewriteRule ^(.*)/hsa/(.*)$ $1/health-saving-account/$2 [L,R=301] ### WORDPRESS ### #RewriteCond %{REQUEST_FILENAME} !-f # Existing File #RewriteCond %{REQUEST_FILENAME} !-d # Existing Directory #RewriteRule . /index.php [L] ### ALTERNATIVE ANTI-HOTLINKING ### #RewriteCond %{HTTP_REFERER} !^$ #RewriteCond %{HTTP_REFERER} !^http://(subdomain\.)?domain.tld/.*$ [NC] #RewriteRule ^.*\.(bmp|tif|gif|jpg|jpeg|jpe|png)$ - [F] ### REDIRECT HOTLINKERS ### #RewriteCond %{HTTP_REFERER} !^$ #RewriteCond %{HTTP_REFERER} !^http://(subdomain\.)?domain.tld/.*$ [NC] #RewriteRule ^.*\.(bmp|tif|gif|jpg|jpeg|jpe|png)$ http://google.com [R] ### DENY REQUEST BASED ON REQUEST METHOD ### #RewriteCond %{REQUEST_METHOD} ^(TRACE|TRACK|OPTIONS|HEAD)$ [NC] #RewriteRule ^.*$ - [F] ### REDIRECT UPLOADS ### #RewriteCond %{REQUEST_METHOD} ^(PUT|POST)$ [NC] #RewriteRule ^(.*)$ /cgi-bin/form-upload-processor.cgi?p=$1 [L,QSA] ### REQUIRE SSL EVEN WHEN MOD_SSL IS NOT LOADED ### #RewriteCond %{HTTPS} !=on [NC] #RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [R,L] #### ALTERNATATIVE TO USING ERRORDOCUMENT ### #-> http://www.htaccesselite.com/d/htaccess-errordocument-examples-vt11.html #RewriteCond %{REQUEST_FILENAME} !-f #RewriteCond %{REQUEST_FILENAME} !-d #RewriteRule ^.*$ /error.php [L] ### SEO REDIRECTS ### #Redirect 301 /2006/oldfile.html http://subdomain.domain.tld/newfile.html #RedirectMatch 301 /o/(.*)$ http://subdomain.domain.tld/s/dl/$1 #=============================================================================# # AUTHENTICATION AND SECURITY #=============================================================================# # http://www.htaccesselite.com/htaccess/basic-authentication-example-vt17.html # # Require (user|group|valid-user) (username|groupname) ########### ### BASIC PASSWORD PROTECTION ### #AuthType basic #AuthName "prompt" #AuthUserFile /.htpasswd #AuthGroupFile /dev/null #Require valid-user ### ALLOW FROM IP OR VALID PASSWORD ### #Require valid-user #Allow from 192.168.1.23 #Satisfy Any ### PROTECT FILES ### #<FilesMatch "\.(htaccess|htpasswd|ini|phps|fla|psd|log|sh)$"> # Order Allow,Deny # Deny from all #</FilesMatch> ### PREVENT HOTLINKING ### #SetEnvIfNoCase Referer "^http://subdomain.domain.tld/" good #SetEnvIfNoCase Referer "^$" good #<FilesMatch "\.(png|jpg|jpeg|gif|bmp|swf|flv)$"> # Order Deny,Allow # Deny from all # Allow from env=good # ErrorDocument 403 http://www.google.com/intl/en_ALL/images/logo.gif # ErrorDocument 403 /images/you_bad_hotlinker.gif #</FilesMatch> ### LIMIT UPLOAD FILE SIZE TO PROTECT AGAINST DOS ATTACK ### #LimitRequestBody 10240000 #bytes, 0-2147483647(2GB) #=============================================================================# # SSL SECURITY #=============================================================================# #-> http://htaccesselite.com/d/redirecting-all-or-part-of-a-server-to-ssl-vt61 ########### ### MOST SECURE WAY TO REQUIRE SSL ### #-> http://www.askapache.com/2006/htaccess/apache-ssl-in-htaccess-examples.html #SSLOptions +StrictRequire #SSLRequireSSL #SSLRequire %{HTTP_HOST} eq "domain.tld" #ErrorDocument 403 https://domain.tld #=============================================================================# # SITE UNDER CONSTRUCTION #=============================================================================# # Heres some awesome htaccess to use when you are developing a site ########### ### COMBINED DEVELOPER HTACCESS CODE-USE THIS ### #<FilesMatch "\.(flv|gif|jpg|jpeg|png|ico|js|css|pdf|swf|html|htm|txt)$"> # Header set Cache-Control "max-age=5" #</FilesMatch> #AuthType basic #AuthName "Ooops! Temporarily Under Construction..." #AuthUserFile /.htpasswd #AuthGroupFile /dev/null #Require valid-user # password prompt for everyone else #Order Deny,Allow #Deny from all #Allow from 192.168.64.5 # Your, the developers IP address #Allow from w3.org # css/xhtml check jigsaw.w3.org/css-validator/ #Allow from googlebot.com # Allows google to crawl your pages #Satisfy Any # no password required if host/ip is Allowed ### DONT HAVE TO EMPTY CACHE OR RELOAD TO SEE CHANGES ### #ExpiresDefault A5 #If using mod_expires #<FilesMatch "\.(flv|gif|jpg|jpeg|png|ico|js|css|pdf|swf|html|htm|txt)$"> # Header set Cache-Control "max-age=5" #</FilesMatch> ### ALLOW ACCESS WITH PASSWORD OR NO PASSWORD FOR SPECIFIC IP/HOSTS ### #AuthType basic #AuthName "Ooops! Temporarily Under Construction..." #AuthUserFile /.htpasswd #AuthGroupFile /dev/null #Require valid-user # password prompt for everyone else #Order Deny,Allow #Deny from all #Allow from 192.168.64.5 # Your, the developers IP address #Allow from w3.org # css/xhtml check jigsaw.w3.org/css-validator/ #Allow from googlebot.com # Allows google to crawl your pages #Satisfy Any # no password required if host/ip is Allowed

بدرود

ممنون دوست عزیز

آیا این فایل برای یک سایت کفایت می کنه؟

آیا سئو هم ئاخلش هست؟

کلی بگم این برای یک سایت خوب هست یا نه؟

Share this post


Link to post
Share on other sites

آقا این هشتگ # رو آخر و اول کد باید قرار داد یا صرفا برای جلوگیری از گمراه شدنه؟

Share this post


Link to post
Share on other sites
ممنون دوست عزیز

آیا این فایل برای یک سایت کفایت می کنه؟

آیا سئو هم ئاخلش هست؟

کلی بگم این برای یک سایت خوب هست یا نه؟

آقا پویان فایلی که گذاشتین برای امنیت و سئو یه سایت خوبه؟

Share this post


Link to post
Share on other sites
باسلام خدمت همگی.

امیدوارم بتونیم مطالب از دست رفته رو برگردونیم:13:

در حالت عادی کاملا واضح هست که اسکریپت یک سایت با php هست یا asp یا js

و مشخص بودن این مورد به هکر کمک میکنه که متد هک رو انتخاب کنه چون هر اسکریپتی متد خاص خودشو داره

میخوام کدی رو معرفی کنم که پسوند فایل های php رو ظاهر به asp یا js تبدیل میکنه و دیگه تمام فایل های php سایت شما به asp در ظاهر تبدیل میشن و هکر فکر میکنه سایت شما asp هست

البته این روش کاملا فایل های php شما رو حفاظت 100 % نمیکنه و بدین معنی نیست هیچ کسی متوجه این حقه نمیشه اما تا حدود زیادی به امنیت فایل های php و مخفی کردن پسوند اونا کمک میکنه و طبیعتا کار رو برای شناسیی اسکریپت نصب شده مثل جوملا و.. سخت میکنه و در نهایت هکر رو دچار زحمت اضافی میکنه و یک سد براش ایجاد میکنه

برای این کار درhtaccess کد زیر رو وارد کنید


AddType application/x-httpd-php .asp .jsp

به همین راحتی

من این کد رو گذاشتم ولی هیچ تغییری نشون نداد.

Share this post


Link to post
Share on other sites
ممنون دوست عزیز

آیا این فایل برای یک سایت کفایت می کنه؟

آیا سئو هم ئاخلش هست؟

کلی بگم این برای یک سایت خوب هست یا نه؟

درود

این صرفا فایل نمونه هست هر کسی نیاز خاص خودشو داره

Share this post


Link to post
Share on other sites
من این کد رو گذاشتم ولی هیچ تغییری نشون نداد.

درود

اکثر کاربران امتحان کردن و جواب داده

ممکنه سرورتون پشتیبانی نکنه و یا هرعلت دیگه ای

Share this post


Link to post
Share on other sites
آقا پویان فایلی که گذاشتین برای امنیت و سئو یه سایت خوبه؟

درود

گفتم این یک فایل نمونه هست و برای سایت های عمومی مناسبه

Share this post


Link to post
Share on other sites

ارسال شده در (ویرایش شده)

درود

بعد یه مدت نسبتا طولانی دوباره میخوام اموزش ها رو از سر بگیرم

خوب برای این سریه یه کد میرام که باعث میشه پسوند های مورد نظر ما فشرده بشن و جچمشون کمتر بشه تا سایت زود تر لود بشه و در نتیجه سرعت لودینگ سایت بیشتر

میشه

# compress text, html, javascript, css, xml:
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript

توی این دستور ما پسوند های

text, html, javascript, css, xml

رو فشرده کردیم

بدرود

آقای افضلی سلام،gift

از این کد می شه برای فشرده سازی فایل های عکس یا فیلم هم استفاده کرد یا فقط برای پسوندهایی هست که ذکر شد؟ اگه امکانش هست کد نمونه رو برا این کار بزارید. برا دو تا از پسوند های jpg و gif کدای زیر رو پیدا کردم. استفاده از این کدا تا چه حد می تونه حجم عکس ها یا فیلم ها رو کم کنه؟

AddOutputFilterByType DEFLATE image/jpg

AddOutputFilterByType DEFLATE image/gif

ممنون:25:

ویرایش شده در توسط mhparvaz

Share this post


Link to post
Share on other sites

درود

میتونید از پسوند های دیگم استفاده کنید کافیه طبق الگو عمل کنید

اما انتظار نداشته باشید در حجم زیاد تفاوت محسوسی کنه بیشتر برای فشرده سازی کد ها استفاده میشه و برای مولتتیمدیا زیاد کارایی نداره

Share this post


Link to post
Share on other sites

با سلام

من یک صفحه html بعنوان صفحه اول دارم و در یک فولدر جولا

با کد زیر صفحه اول بدون www به صفحه دارای www ریدایرکت می شه ولی روی جوملا که داخل یک فولدر هست تاثیری نمی گذره

RewriteCond %{HTTP_HOST} !^www\.mysite\-co\.com$ [NC]

RewriteRule ^(.*) http://www.mysite-co.com/$1 [QSA,L,R=301]

وقتی فایل htaccess دارای .txt هست جوملا هم به www ریدایکت می شه ولی وقتی پسوند تغییر می کنه دیگر آدرس تغییر نمی کند.

در فایل htacces جوملا (در فولدر fa) چه کدی باید گذاشت تا www اجباری بشه؟

Share this post


Link to post
Share on other sites

قفل کردن آدرس سایت بر روی W

RewriteEngine on

RewriteCond %{HTTP_HOST} !^www.usitedesign.com$ [NC]

RewriteRule ^(.*) http://www.usitedesign.com/$1 [QSA,L,R=301]

یا

RewriteCond %{HTTP_HOST} ^usitedesign.cm [NC]

RewriteRule ^(.*)$ http://www.usitedesign.com/$1 [QSA,L,R=301]

نکته : اگر این کد روی سرور شما کار نکرد علامت های "\" و $ و [nc]را از خط دوم حذف کنید.

Share this post


Link to post
Share on other sites

این کد ها کار نکرد.

الان روت همه و فولدر ها درست ریدارکت می شن. ولی فولدر fa که داخلش جوملا نصب هست و خودش htaccess جداگانه داره درست عمل نمی کنه. این کد رو هم زدم ریدایرکت می شه ولی دیگه هیچی بالا نمی آد:

Redirect 301 /fa/ http://www.geotech-co.com/fa

Share this post


Link to post
Share on other sites

با سلام خدمت اساتید

بنده فایل htacces سئو شده ای که به عنوان هدیه ی نوروزی(عید 93) در انجمن توسط جناب آقایی(فکر کنم) قرار داده شده بود رو در سایتم قرار دادم و از کدهایی که در این تاپیک برای امنیت سایت قرار داده شد در فایلم (فایل htaccess سئو شده هدیه نوروز) استفاده کردم.آیا این کدها در این دو تاپیک باهم تداخلی ندارند؟ به سئو امنیت سایت آسیبی نمیزنند؟!

:13:

Share this post


Link to post
Share on other sites

درود

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

بهتره کدها رو تک تک تست کنید و بعد لود سایت رو تست کنید و اگه تداخل یا اخلال ایجاد کرد کد رو استفاده نکنید

Share this post


Link to post
Share on other sites

یه سوال دیگه!:bala:

من وقتی اسم فایل رو از htaccess.txt به .htaccess (نقطه قبل از h قرار دارد) تغییر میدم کلا سایتم بهم میریزه.مشکل از کجاست؟

Share this post


Link to post
Share on other sites
یه سوال دیگه!:bala:

من وقتی اسم فایل رو از htaccess.txt به .htaccess (نقطه قبل از h قرار دارد) تغییر میدم کلا سایتم بهم میریزه.مشکل از کجاست؟

باید بعد اعمال تغییرات mod_rewrite رو فعال کنید

و هچنین بازم بستگی به تنظیمات سرورتون داره شاید اونا تغییر رو غیر فعال کردن

Share this post


Link to post
Share on other sites

واسه ی قفل کردن آدرس روی www هم باید نام فایل تغییر و mod_rewrite فعال باشد؟ giftgift

Share this post


Link to post
Share on other sites

رو سرور تنظیمات فعاله.اما تغییر نام که میدم سایتم میریزه بهم.آیا میتونه بخاطره کدهای این تاپیک که در فایلم قرار دادم باشه؟

Share this post


Link to post
Share on other sites

درود

بله میتونه

باید از کد مناسب استفاده کنید

یه سرچ توی گوگل بزنید و کد مناسب تغییر مسیر www رو پیدا کنید

Share this post


Link to post
Share on other sites

قاعدتا نباید مشکلی پیش بیاره

با اینحال از مدیران سئو در فروم سوال کنید

Share this post


Link to post
Share on other sites

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری