توی کدهام همچین عبارتهایی وجود ندارن.مطمئنی از options +followsymlinks یا allowoverride استفاده نکردی؟
این کارو کردم، وقتی همه دستورات رو حذف کردم سایت بدون مشکل بالا می یومد.یه تستی هم اینو کن. تمام دستوراتی که مربوط به تغییر پسوند اپلیکشن ها میشه رو کامنت کن ببین چی میشه. اگر نشد . من یه جا خوندم مربوط به سرور میشه! حالا دقیق نمی کنم چی به چیه.
#page not found
ErrorDocument 404 admin/config/router.php?num=404
#Access forbidden:
ErrorDocument 403 admin/config/router.php?num=403
#Server error
ErrorDocument 500 admin/config/router.php?num=500
#To add charset
AddDefaultCharset utf-8
# protect wpconfig.php
<files wp-config.php>
order allow,deny
deny from all
</files>
# STRONG HTACCESS PROTECTION</code>
<Files ~ "^.*\.([Hh][Tt][Aa])">
order allow,deny
deny from all
satisfy all
</Files>
##############################
# BEGIN Compress text files
<ifModule mod_deflate.c>
<filesMatch "\.(css|js|php|x?html?)$">
SetOutputFilter DEFLATE
</filesMatch>
</ifModule>
# END Compress text files
# BEGIN Expire headers
<ifModule mod_expires.c>
ExpiresActive On
ExpiresDefault "access plus 1 seconds"
ExpiresByType image/x-icon "access plus 2592000 seconds"
ExpiresByType image/jpeg "access plus 2592000 seconds"
ExpiresByType image/png "access plus 2592000 seconds"
ExpiresByType image/gif "access plus 2592000 seconds"
ExpiresByType application/x-shockwave-flash "access plus 2592000 seconds"
ExpiresByType text/css "access plus 604800 seconds"
ExpiresByType text/javascript "access plus 216000 seconds"
ExpiresByType application/javascript "access plus 216000 seconds"
ExpiresByType application/x-javascript "access plus 216000 seconds"
ExpiresByType text/html "access plus 600 seconds"
ExpiresByType application/xhtml+xml "access plus 600 seconds"
</ifModule>
# END Expire headers
# BEGIN Cache-Control Headers
<ifModule mod_headers.c>
<filesMatch "\.(ico|jpe?g|png|gif|swf)$">
Header set Cache-Control "max-age=2592000, public"
</filesMatch>
<filesMatch "\.(css)$">
Header set Cache-Control "max-age=2592000, public"
</filesMatch>
<filesMatch "\.(js)$">
Header set Cache-Control "max-age=2592000, public"
</filesMatch>
<filesMatch "\.(x?html?)$">
Header set Cache-Control "max-age=600, private, must-revalidate"
</filesMatch>
</ifModule>
# END Cache-Control Headers
# BEGIN Turn ETags Off
<ifModule mod_headers.c>
Header unset ETag
</ifModule>
FileETag None
# END Turn ETags Off
# BEGIN Remove Last-Modified Header
<ifModule mod_headers.c>
Header unset Last-Modified
</ifModule>
# END Remove Last-Modified Header
RewriteEngine On
RewriteBase /
#no Index.php
RewriteRule ^(.*)(/?)index\.php$ /$1 [R=301,L]
RewriteRule ^(.*)(/?)index\.html$ /$1 [R=301,L]
RewriteRule ^(.*)(/?)index\.htm$ /$1 [R=301,L]
RewriteRule ^main/([a-zA-Z0-9]+)/([a-zA-Z0-9]+)$ main.php?controller=$1&action=$2 [NC,L]
RewriteRule ^main/([a-zA-Z0-9]+)/([a-zA-Z0-9]+)/([a-zA-Z0-9]+)$ main.php?controller=$1&action=$2¶m1=$3 [NC,L]
RewriteRule ^main/([a-zA-Z0-9]+)/([a-zA-Z0-9]+)/([a-zA-Z0-9]+)/([a-zA-Z0-9]+)$ main.php?controller=$1&action=$2¶m1=$3¶m2=$4 [NC,L]
RewriteRule ^main/([a-zA-Z0-9]+)/([a-zA-Z0-9]+)/([a-zA-Z0-9]+)/([a-zA-Z0-9]+)/([a-zA-Z0-9]+)$ main.php?controller=$1&action=$2¶m1=$3¶m2=$4¶m3=$5 [NC,L]
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ admin/config/router.php?num=404 [NC,L]
این کار رو قبلا کردم ولی بازم ارور می ده.به اینا میگن followsymlinks!!!
RewriteEngine On
#RewriteBase /
#page not found
ErrorDocument 404 admin/config/router.php?num=404
#Access forbidden:
ErrorDocument 403 admin/config/router.php?num=403
#Server error
ErrorDocument 500 admin/config/router.php?num=500
#To add charset
AddDefaultCharset utf-8
# protect wpconfig.php
<files wp-config.php>
order allow,deny
deny from all
</files>
# STRONG HTACCESS PROTECTION</code>
<Files ~ "^.*\.([Hh][Tt][Aa])">
order allow,deny
deny from all
satisfy all
</Files>
##############################
# BEGIN Compress text files
<ifModule mod_deflate.c>
<filesMatch "\.(css|js|php|x?html?)$">
SetOutputFilter DEFLATE
</filesMatch>
</ifModule>
# END Compress text files
# BEGIN Expire headers
<ifModule mod_expires.c>
ExpiresActive On
ExpiresDefault "access plus 1 seconds"
ExpiresByType image/x-icon "access plus 2592000 seconds"
ExpiresByType image/jpeg "access plus 2592000 seconds"
ExpiresByType image/png "access plus 2592000 seconds"
ExpiresByType image/gif "access plus 2592000 seconds"
ExpiresByType application/x-shockwave-flash "access plus 2592000 seconds"
ExpiresByType text/css "access plus 604800 seconds"
ExpiresByType text/javascript "access plus 216000 seconds"
ExpiresByType application/javascript "access plus 216000 seconds"
ExpiresByType application/x-javascript "access plus 216000 seconds"
ExpiresByType text/html "access plus 600 seconds"
ExpiresByType application/xhtml+xml "access plus 600 seconds"
</ifModule>
# END Expire headers
# BEGIN Cache-Control Headers
<ifModule mod_headers.c>
<filesMatch "\.(ico|jpe?g|png|gif|swf)$">
Header set Cache-Control "max-age=2592000, public"
</filesMatch>
<filesMatch "\.(css)$">
Header set Cache-Control "max-age=2592000, public"
</filesMatch>
<filesMatch "\.(js)$">
Header set Cache-Control "max-age=2592000, public"
</filesMatch>
<filesMatch "\.(x?html?)$">
Header set Cache-Control "max-age=600, private, must-revalidate"
</filesMatch>
</ifModule>
# END Cache-Control Headers
# BEGIN Turn ETags Off
<ifModule mod_headers.c>
Header unset ETag
</ifModule>
FileETag None
# END Turn ETags Off
# BEGIN Remove Last-Modified Header
<ifModule mod_headers.c>
Header unset Last-Modified
</ifModule>
# END Remove Last-Modified Header
#no Index.php
RewriteRule ^(.*)(/?)index.php$ /$1 [R=301,L]
RewriteRule ^(.*)(/?)index.html$ /$1 [R=301,L]
RewriteRule ^(.*)(/?)index.htm$ /$1 [R=301,L]
RewriteRule ^main/([a-zA-Z0-9]+)/([a-zA-Z0-9]+)$ main.php?controller=$1&action=$2 [NC,L]
RewriteRule ^main/([a-zA-Z0-9]+)/([a-zA-Z0-9]+)/([a-zA-Z0-9]+)$ main.php?controller=$1&action=$2¶m1=$3 [NC,L]
RewriteRule ^main/([a-zA-Z0-9]+)/([a-zA-Z0-9]+)/([a-zA-Z0-9]+)/([a-zA-Z0-9]+)$ main.php?controller=$1&action=$2¶m1=$3¶m2=$4 [NC,L]
RewriteRule ^main/([a-zA-Z0-9]+)/([a-zA-Z0-9]+)/([a-zA-Z0-9]+)/([a-zA-Z0-9]+)/([a-zA-Z0-9]+)$ main.php?controller=$1&action=$2¶m1=$3¶m2=$4¶m3=$5 [NC,L]
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ admin/config/router.php?num=404 [NC,L]
RewriteEngine On
RewriteRule ^admin/panel/([a-zA-Z0-9]*)/([a-zA-Z0-9]*)$ admin/panel.php?action=$1&page=$2 [NC,L]
RewriteRule ^admin/panel/([a-zA-Z0-9]*)/([a-zA-Z0-9]*)/([a-zA-Z0-9]*)$ admin/panel.php?action=$1&page=$2&id=$3 [NC,L]
RewriteRule ^admin/panel/([a-zA-Z0-9]*)/([a-zA-Z0-9]*)/([a-zA-Z0-9]*)/([a-zA-Z0-9]*)/([a-zA-Z0-9]*)$ admin/panel.php?action=$1&type=$2&page=$3&id=$4&p=$5 [NC,L]
RewriteRule ^admin/main/([a-zA-Z0-9]*)$ admin/main.php?action=$1 [NC,L]
RewriteRule ^admin/main/([a-zA-Z0-9]*)/([a-zA-Z0-9]*)$ admin/main.php?action=$1&word=$2 [NC,L]
RewriteRule ^admin/main/([a-zA-Z0-9]*)/([a-zA-Z0-9]*)/([a-zA-Z0-9\._\-]*)/([a-zA-Z0-9]*)$ admin/main.php?action=$1&usertype=$2&userid=$3&word=$4 [NC,L]
RewriteRule ^admin/users/([a-zA-Z0-9]*)/([a-zA-Z0-9]*)/([a-zA-Z0-9]*)/([a-zA-Z0-9]*)$ admin/users.php?action=$1&page=$2&type=$3&id=$4 [NC,L]
RewriteRule ^admin/settings/([a-zA-Z0-9]*)/([a-zA-Z0-9]*)/([a-zA-Z0-9]*)/([a-zA-Z0-9]*)$ admin/settings.php?action=$1&page=$2&type=$3&id=$4 [NC,L]
RewriteRule ^admin/file/([a-zA-Z0-9]*)/([a-zA-Z0-9]*)/([a-zA-Z0-9]*)/([a-zA-Z0-9]*)$ admin/file.php?action=$1&page=$2&type=$3&id=$4 [NC,L]
#no Index.php
RewriteRule ^(.*)(/?)index.php$ /$1 [R=301,L]
RewriteRule ^(.*)(/?)index.html$ /$1 [R=301,L]
RewriteRule ^(.*)(/?)index.htm$ /$1 [R=301,L]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.html\ HTTP/
RewriteRule ^index\.html$ http://www.example.com/ [R=301,L]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.php\ HTTP/
RewriteRule ^index\.php$ http://www.example.com/ [R=301,L]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.htm\ HTTP/
RewriteRule ^index\.htm$ http://www.example.com/ [R=301,L]
نه برطرف نشده.خب پس مشکل قبلی برطرف شد. دلیلش این بود که شما باید بخاطر بسپاری RewriteEngine On رو باید اول بگذاری بعد زیرش هرچی خواستی. این ریدایرکت هم ربطی به RewriteRule نداره. این دستور فقط اونی که مشخص کردی رو دایرکت می کنه. شما خط زیر رو کلاً کامنت کن:
دقیقاً جای این دستور تو فایل مربوطه نمی دونم کجاست ولی همیشه در اول مشاهده کردم خودمم! اگر چیزی فهمیدی در این باره با منم به اشتراک بذار لطفاًدر مورد RewriteEngine On : اگر این کد در ابتدای صفحه قرار بگیره، مشکلی برای بقیه کدها که با این مد کاری ندارن ایجاد نمی کنه؟