Форум русской поддержки Joomla!® CMS
26.07.2017, 00:42:05 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 3.0 FAQ Joomla 2.5 FAQ Joomla 1.5 FAQ Правила форума Новости Joomla Реклама Войти Регистрация Помощь  
Основной курс по Joomla
Страниц: 1 2 3 4 5 [6]   Вниз
  Добавить закладку  |  Печать  
Автор

.htaccess

 (Прочитано 76695 раз)
0 Пользователей и 1 Гость смотрят эту тему.
yuri-design
Завсегдатай
*****

Репутация: +76/-5
Offline Offline

Пол: Мужской
Сообщений: 675


« : 28.01.2011, 22:04:03 »

Может кому-то пригодиться в работе.
(прислал админ с сервера)
ВНИМЕНИЕ! Это не готовый файл!
Файл .htaccess содержит пользовательские настройки web-сервера и анализируется при каждом запросе на сервер.
Создать файлы htaccess можно в Блокноте
Цитировать
Кодировка

Как выставить русскую кодировку.
AddDefaultCharset windows-1251
Определение кодировки на определенные типы файлов
AddType "text/html; charset=koi8-r" .html .htm shtm
Определение кодировки на загружаемые файлы
CharsetSourceEnc windows-1251
Отключение перекодировки
Если при загрузке скриптом не загружаются бинарные файлы, создайте файл .htaccess и поместите его папку, где вы хотите отключить функцию, в нем пропишите строчку:

CharsetRecodeMultipartForms off

 Назначение стартовой страницы.

 DirectoryIndex index.html

 Можно указывать несколько страниц.

 DirectoryIndex index.html index.php index.shtml map.html

 При запросе каталога они будут искаться в том порядке, в котором перечислены в директиве DirectoryIndex. Еслине будет найден файл index.html, то будет произведен поиск файла index.php и т.д.

Разрешение / Запрет

Разрешить доступ с определенного IP.

order allow deny

deny from all

allow from 000.000.000.000

Запретить доступ с определенного IP.

order allow deny

allow from all

deny from 000.000.000.000

Запретить просмотр всем.

deny from all

Разрешить просмотр всем.

allow from all

Запретить доступ к определенному файлу.

<Files config.php>

deny from all

</Files>

Запретить доступ к файлам с определенным расширением.

<Files "*.conf">

deny from all

</Files>

Запретить доступа к файлам с несколькими типа расширений.

<Files "\.(inc|conf|cfg)$">

deny from all

</Files>

? - любой одиночный символ

* - любая последовательность символов, исключая символ / (слеш).

Тонкая настройка доступа.

Есть каталог a1 и в нем два вложенных каталога a2, a3, введено 2 уровня пользователей. 1 группа имеет доступ то лько к a1 и a2, 2-я ко всем трем каталогам. Необходимо проводить аутентификацию только 1 раз - при доступе к a1, но при этом соблюдать права на доступ к а2 и а3. Ник и пароль запрашиваются только при входе на а1 - если у юзера есть доступ на а2 пароль уже не запрашивается. Если на а3 доступа нет, вылетит табличка "введите пароль".

www.site.ru/a1

www.site.ru/a1/а2

www.site.ru/a1/a3

a1 - общий и вместе с тем закрытый. а2 и а3 только для отдельных личностей.

файл .htaccess для каталога а1:

AuthName "Input password"

AuthType Basic

AuthUserFile "/pub/home/login/htdocs/clousearea/.htpasswd"

<Files *.*>

require valid-user

</Files>

файл .htaccess для каталога а2:

AuthName "Input password"

AuthType Basic

AuthUserFile "/pub/home/login/htdocs/clousearea/.htpasswd"

<Files *.*>

require user юзер1 юзер2 юзер3

</Files *.*>

файл .htaccess для каталога а3:

AuthName "Input password"

AuthType Basic

AuthUserFile "/pub/home/абв/htdocs/clousearea/.htpasswd"

<Files *.*>

require user юзер1 юзер4 юзер5

</Files *.*>

Перенаправление (редирект)

Пути к файлам и директориям должны указываться от корня сервера, например, /pub/home/server1/html/

В именах доменов обязательно должны быть указаны протоколы (http://, https://, ftp://)

Если вы не знаете путь от корня сервера, то Вы можете его узнать, спросив у администратора сервера, либо может е посмотреть сами, запустив на сайте функцию PHP — phpinfo(). Она выведет на экран конфигурацию PHP в виде фиолето вых таблиц. В них Вам необходимо найти переменную doc_root и посмотреть ее значение — это будет путь от корня сервера до Вашей основной директории.

Перенаправление (редирект) только при запросе определенных страниц.

Redirect /location/from/root/file.ext http://www.serv.ru/new/file/location.xyz

/location/from/root/file.ext - это путь до корневого файла (до нужного файла).

http://www.serv.ru/new/file/location.xyz это место, куда попадет пользователь сделав запрос на файл file.txt.

Если файл лежит в корневом каталоге, то вместо location/from/root/ можно сразу поставить:

/oldfile.html

ну и если файл в субкаталоге, то будет выглядеть так:

/old/oldfile.html

Редирект на папку (напр. папка oldfolder).

Redirect /oldfolder http://www.serv.ru/newfolder

запрос на www.oldserv.ru/oldfolder/images/smile.gif,

попадет на www.serv.ru/newfolder/images/smile.gif.

Глобальное перенаправление (редирект) на другой адрес.

Redirect / http://www.newsite.ru

Перенаправление (редирект) только посетителей с определенным IP-адресом.

SetEnvIf REMOTE_ADDR 192.145.121.1 REDIR="redir"

RewriteCond %{REDIR} redir

RewriteRule ^/$ /only_for_you.html


Защита паролем.

AuthName "Section Name" AuthType Basic AuthUserFile /full/path/to/.htpasswd Require valid-user

Вам надо изменить для своего сайта. Например, поменять Section Name на своё название (к примеру - Members area).  

/full/path/to/.htpasswd - полный путь до файла .htapasswd (об этом чуть позже).

Если вы не знаете полного пути, то обратитесь к системному администратору.

Файл .htpasswd

Чтобы защитить директорию паролем, надо создать файл содержащий логины и пароли, которым разрешено будет посещать сайт. И вписать в файл .htpasswd.

Создание имен пользователей и паролей.

Вписываем имена пользователей и пароли след. образом:

username:password

пароль (password) зашифрованная версия пароля.

Чтобы зашифровать .htpasswd файл, вам нужно будет воспользоваться готовым скриптом, или самому написать его. Если вам нужно несколько пользователей, то пишите построчно их. Как только вы заходите в защищенную паролем директорию, у вас всплывет pop-up окно для ввода логина и пароль.

А можно просто вписать в поле адреса:

http://username:password@www.serv.ru/directory

Как заставить Апач обрабатывать SSI директивы?

SSI позволяют "собирать" страницу из кусочков. В одном кусочке у вас код меню, в другом код верхней части страницы, в третьем - нижней. А посетитель видет обычную страницу, которая состоит из того кода, который входит в ваши кусочки. Необходимы обязательные установки в httpd.conf:

В блоке, начинающемся с <Directory/> и заканчивающийся </Directory> в строку Options Indexes добавьте Includes и после, в файле .htaccess пишем:

AddHandler server-parsed .shtml .shtm .html .htm

Чтобы пользователь не видел список файлов в папке, при отсутствии в ней индексного файла, добавим строчку:

Options -Indexes

Выполнение php кода в файлах с другим расширением.

Иногда бывает полезно "обмануть" посетителя, выдавая ему свои php-скрипты или иные файлы, как HTML файлы. Реально используется для индексации поисковой системой Rambler php-скриптов.

RemoveHandler .html .htm

AddType application/x-httpd-php php .htm .html phtml

Заметьте, так как файлам с расширением .html и .htm сопоставлено, что это файлы с гипертекстовой разметкой, то мы первой строкой убираем это сопоставление и добавляем обработку таких файлов php интерпретатором. При большой посещаемости сервера такие ухищрения могут вызвать тормоза. Спрашивайте у админа.

Error 404 ..

Можно создать специальный файл, где будут ссылки на ваш сайт, а не на хостера. Назвать его 404.html и поместить в корневую директорию. Величина страницы с ошибкой должна быть больше 511 байтов, иначе Internet Explorer может показать собственную страницу с описанием ошибки.

ErrorDocument 404 /404.html

ErrorDocument 403 /403.html

ErrorDocument 401 /401.html

ErrorDocument 500 /500.html

Можно указать другой файл, который автоматически откроется при появлении ошибки.

Карта сайта - является идеальным файлом для обработки ошибки error 404 (файл не найден).

ErrorDocument 404 /map.html

register_globals

Если у вас не работает почтовая форма, возможно не включен register_globals, тогда добавьте строчку:

php_flag register_globals on

Или php_flag register_globals off если вы хотите отключить.

Защита от хотлинков

Хотлинк (hotlink) - это когда ставят прямую ссылку на ваш контент с другого сайта.

Часто такая ситуация нежелательна, вы же не хотите оплачивать трафик другого сайта, и для ее избежания используется:

SetEnvIfNoCase Referer "^http://www.test.com" local_ref=1

SetEnvIfNoCase Referer "^http://test.com" local_ref=1

<FilesMatch ".(gif|jpg)>

Order Allow,Deny

Allow from env=local_ref

</FilesMatch>

Другой вариант:

RewriteCond %{HTTP_REFERER} !^$

RewriteCond %{HTTP_REFERER} !^http://www.quux-corp.de/~quux/.*$ [NC]

RewriteRule .*\.(gif|jpg)$ - [F]

RewriteCond %{HTTP_REFERER} !^$

RewriteCond %{HTTP_REFERER} !.*/foo-with-gif\.html$

RewriteRule ^inlined-in-foo\.(gif|jpg)$ - [F]
« Последнее редактирование: 28.01.2011, 22:38:02 от yuri-design » Записан
 
stepan39
Давно я тут
****

Репутация: +18/-0
Offline Offline

Пол: Мужской
Сообщений: 251



« Ответ #151 : 29.09.2012, 11:46:04 »

Выдает 500 ошибку

Код смотрели?
Показать текстовый блок
Записан
tramb
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 7


« Ответ #152 : 13.11.2012, 15:06:43 »

Добрый день!

помогите пожалуйста написать пару строк для .htaccess

1) необходимо чтобы: \index.html \index.php вели на site.com - тоесть сделать стартовой только site.com
2) www.site.com перенаправлял на site.com
3) сейчас у меня все страницы отображаются по разному, но показывает одно и тоже:
а) site.com\razdel\
б) site.com\razdel
в) site.com\razdel.html

Как сделать перенаправление, чтобы отображалось только site.com\razdel.html

4) Но при этом у меня на сайте есть страницы которые располагаются так - site.com\razdel\stranica.html - повлияют ли изменения из пункта 2 и 3 на отображение данных страниц?

5) если имеются внешние ссылки на страницы сайта вида - www.site.com\razdel.html и www.site.com\index.html-при переходе по ним не будет появляться ошибка 404, если сделать редирект как в пункте 1 и 2?

И последнее - у меня домен .рф

сам плохо разбираюсь, если что не понятно написал спрашивайте.
« Последнее редактирование: 13.11.2012, 20:58:20 от tramb » Записан
miishl
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Пол: Мужской
Сообщений: 60



« Ответ #153 : 14.11.2012, 14:09:02 »

Код смотрели?
Показать текстовый блок
Да, смотрел

Записан
Vasiliy111
Давно я тут
****

Репутация: +5/-0
Offline Offline

Сообщений: 206


« Ответ #154 : 15.11.2012, 00:14:04 »

А если в htaccess прописать запрет со своим ip:

Order Deny,Allow
Deny from all
Allow from мой IP

Для меня сайт будет открыт? или нет?
Записан
tem_radov
Захожу иногда
**

Репутация: +1/-0
Offline Offline

Сообщений: 16


« Ответ #155 : 20.11.2012, 15:42:36 »

Здравствуйте.
Подскажите пожалуйсто в чём может быть проблема.
Добавил на сайт кнопку facebook "Мне нравится": кнопка нажимается, +1 добавляется, но в аккаунте фейсбука записи не оставляет. Пробовал на разных акаунтах.
Вот тут: http://developers.facebook.com/tools/debug

Выдаёт:
Critical Errors That Must Be Fixed
Could Not Follow Redirect:   URL requested a HTTP redirect, but it could not be followed.

Кто-дь знает в чём может быть проблема?
Спасибо!

Мой файл
Код:
Options +Includes +FollowSymLinks -Indexes
AddHandler server-parsed .shtml
DirectoryIndex index.shtml index.htm index.php index.html
AddDefaultCharset utf-8
CookieTracking on
CookieExpires "1 years"



Options +FollowSymLinks
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.сайт\.ru$ [NC]
RewriteRule ^(.*)$ http://сайт.ru/$1 [R=301,L]


RewriteCond %{QUERY_STRING} base64_encode[^(]*\([^)]*\) [OR]

RewriteCond %{QUERY_STRING} (<|%3C)([^s]*s)+cript.*(>|%3E) [NC,OR]

RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]

RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})

RewriteRule .* index.php [F]



RewriteBase /


RewriteCond %{REQUEST_URI} /component/|(/[^.]*|\.(php|html?|feed|pdf|vcf|raw))$ [NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php [L]
Записан
Iryna
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 1


« Ответ #156 : 09.12.2012, 22:51:47 »

Добрый день.
Помогите, пожалуйста. Я делаю сайт на Joomla. Все работало. Но после смены файла htaccess на .htaccess для ЧПУ. Моя галерея с фотографиями перестала работать. Фотографии не открываются. Как мне исправить это? Вот мой файл:

##
# @version $Id: htaccess.txt 21064 2011-04-03 22:12:19Z dextercowley $
# @package Joomla
# @copyright Copyright (C) 2005 - 2010 Open Source Matters. All rights reserved.
# @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
# Joomla! is Free Software
##


#####################################################
#  READ THIS COMPLETELY IF YOU CHOOSE TO USE THIS FILE
#
# The line just below this section: 'Options +FollowSymLinks' may cause problems
# with some server configurations.  It is required for use of mod_rewrite, but may already
# be set by your server administrator in a way that dissallows changing it in
# your .htaccess file.  If using it causes your server to error out, comment it out (add # to
# beginning of line), reload your site in your browser and test your SEF url's.  If they work,
# it has been set by your server administrator and you do not need it set here.
#
#####################################################

##  Can be commented out if causes errors, see notes above.
Options +FollowSymLinks

#
#  mod_rewrite in use

RewriteEngine On

########## Begin - Rewrite rules to block out some common exploits
## If you experience problems on your site block out the operations listed below
## This attempts to block the most common type of exploit `attempts` to Joomla!
#
## Deny access to extension XML files (uncomment out to activate)
#<Files ~ "\.xml$">
#Order allow,deny
#Deny from all
#Satisfy all
#</Files>
## End of deny access to extension XML files
# Block out any script trying to set a mosConfig value through the URL
RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|\%3D) [OR]
# Block out any script trying to base64_encode data within the URL
RewriteCond %{QUERY_STRING} base64_encode[^(]*\([^)]*\) [OR]
# Block out any script that includes a <script> tag in URL
RewriteCond %{QUERY_STRING} (<|%3C)([^s]*s)+cript.*(>|%3E) [NC,OR]
# Block out any script trying to set a PHP GLOBALS variable via URL
RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
# Block out any script trying to modify a _REQUEST variable via URL
RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})
# Return 403 Forbidden header and show the content of the root homepage
RewriteRule .* index.php [F]
#
########## End - Rewrite rules to block out some common exploits


########## Begin - Custom redirects
#
# If you need to redirect some pages, or set a canonical non-www to
# www redirect (or vice versa), place that code here. Ensure those
# redirects use the correct RewriteRule syntax and the [R=301,L] flags.
#
########## End - Custom redirects


#  Uncomment following line if your webserver's URL
#  is not directly related to physical file paths.
#  Update Your Joomla! Directory (just / for root)

# RewriteBase /


########## Begin - Joomla! core SEF Section
#
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
#
# If the requested path and file is not /index.php and the request
# has not already been internally rewritten to the index.php script
RewriteCond %{REQUEST_URI} !^/index\.php
# and the request is for root, or for an extensionless URL, or the
# requested URL ends with one of the listed extensions
RewriteCond %{REQUEST_URI} (/[^.]*|\.(php|html?|feed|pdf|raw))$ [NC]
# and the requested path and file doesn't directly match a physical file
RewriteCond %{REQUEST_FILENAME} !-f
# and the requested path and file doesn't directly match a physical folder
RewriteCond %{REQUEST_FILENAME} !-d
# internally rewrite the request to the index.php script
RewriteRule .* index.php [L]
#
########## End - Joomla! core SEF Section

Спасибо
Записан
Frontovik
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Сообщений: 57


« Ответ #157 : 18.02.2013, 16:57:10 »

День добрый!
Подскажите, пож-та, как в .htaccess сделать редирект к примеру с:
http://www.moy_sayt.ru/1-katalog/1-oborudovanie/1-material
http://www.moy_sayt.ru/1-katalog/6-oborudovanie/4-material
http://www.moy_sayt.ru/1-katalog/2-oborudovanie/7-material

на
http://www.moy_sayt.ru/1-oborudovanie/1-material
http://www.moy_sayt.ru/6-oborudovanie/4-material
http://www.moy_sayt.ru/2-oborudovanie/7-material

убрав ненужную промежуточную страницу /1-katalog/, для всех страниц с разным окончанием.

в .htaccess добавил вот это:
RewriteRule ^1-katalog/(.*)$ http://moy_sayt.ru/$1 [R=permanent,L]
но переадресации не происходит, к сожалению. вставил в конец файла .htaccess, может не туда вставил или не то прописал?
Записан
oleg-great
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Пол: Мужской
Сообщений: 52



« Ответ #158 : 18.03.2013, 22:14:48 »

Парни, а можно сделать как нибудь так:
Код:
#Запрет на доступ к файлам с несколькими расширениями:
<Files ~ "\.(conf|cfg|xml)$">
Deny from all
</Files>
но чтобы один файл XML был доступен, а точнее sitemap.xml.
А то при таком раскладе Google и Яндекс не могут получить доступ к нему.
Записан
pantela
Давно я тут
****

Репутация: +1/-0
Offline Offline

Сообщений: 257



« Ответ #159 : 23.04.2013, 12:09:48 »

а что сделать если при 400 ошибке не делается переадресация если ссылка виде http://site.ru/component/content/article/34-сайт%

т.е. на конце "%", в противном случии редирект делается т.к. прописанно ErrorDocument 400 index.php

Как лечить... просто есть один сайт откуда ссылки силаются на мой сайт, так у них атм глюк кокой-то что некоторым ссылкам прописывается на концы "%", возможно потому что ссылки у меян виде кирилицы....
Записан
Go-destroy
Давно я тут
****

Репутация: +4/-1
Offline Offline

Пол: Мужской
Сообщений: 222



« Ответ #160 : 26.04.2013, 15:32:21 »

Поделюсь своим для 2.5х
Код:
## Может быть закомментировано, если вызывает ошибку сервера.
Options +FollowSymLinks
##

## Включение mod_rewrite
RewriteEngine On
##

## Корневая директория
RewriteBase /
##

## Кодировки по умолчанию
AddDefaultCharset utf-8
##

## Редирект с WWW на без WWW
RewriteCond %{HTTP_HOST} ^www\.site\.ru
RewriteRule ^(.*)$ http://site.ru/$1 [R=permanent,L]
##

## Редирект аресов с index.php на без index.php
RewriteCond %{THE_REQUEST} ^GET.*index\.php [NC]
RewriteRule (.*?)index\.php/*(.*) /$1$2 [R=301,L]
##

## Редирект со слеша на без слеша
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)/$ /$1 [R=301,L]
##

## Запрет листинга директорий
IndexIgnore *
Options -Indexes
##

## Настройки хостинга
php_value safe_mode 0
php_flag file_uploads 1
php_value display_errors 0
php_value register_globals 0
php_value output_buffering 0
php_value magic_quotes_gpc 1
php_value allow_url_fopen 0
php_flag magic_quotes_runtime 0
php_value upload_max_filesize 5M
##


## Правила обработки запросов для блокировки распространенных эксплоитов
RewriteCond %{QUERY_STRING} proc/self/environ [OR]
RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|\%3D) [OR]
RewriteCond %{QUERY_STRING} base64_(en|de)code\(.*\) [OR]
RewriteCond %{QUERY_STRING} base64_encode[^(]*\([^)]*\) [OR]
RewriteCond %{QUERY_STRING} (<|%3C)([^s]*s)+cript.*(>|%3E) [NC,OR]
RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})
RewriteRule .* index.php [F]
##

## Блокирование прямого доступа к ядру
RewriteCond %{REQUEST_FILENAME} -f
RewriteCond %{REQUEST_URI} \.php|\.ini|\.xml [NC]
RewriteCond %{REQUEST_URI} \/components\/ [OR]
RewriteCond %{REQUEST_URI} ^\/includes\/|^\/administrator\/includes\/ [OR]
RewriteCond %{REQUEST_URI} \/language\/ [OR]
RewriteCond %{REQUEST_URI} \/libraries\/ [OR]
RewriteCond %{REQUEST_URI} \/modules\/ [OR]
RewriteCond %{REQUEST_URI} \/plugins\/ [OR]
RewriteCond %{REQUEST_URI} \/templates\/ [OR]
RewriteCond %{REQUEST_URI} \/cli\/
RewriteRule ^(.*)$ index.php [R=404,L]
##

## Блокирование MySQL инъекций
RewriteCond %{query_string} concat.*\( [NC,OR]
RewriteCond %{query_string} union.*select.*\( [NC,OR]
RewriteCond %{query_string} union.*all.*select [NC]
RewriteRule ^(.*)$ index.php [F,L]
##

## Блокировка файловых инъекций
RewriteCond %{REQUEST_METHOD} GET
RewriteCond %{QUERY_STRING} [a-zA-Z0-9_]=http:// [OR]
RewriteCond %{QUERY_STRING} [a-zA-Z0-9_]=(\.\.//?)+ [OR]
RewriteCond %{QUERY_STRING} [a-zA-Z0-9_]=/([a-z0-9_.]//?)+ [NC]
RewriteRule .* - [F]
##

## Запретит доступа к htaccess.txt, configuration.php и php.ini
RewriteRule ^(htaccess\.txt|configuration\.php-dist|php\.ini)$ - [F]
##

## Раздела SEF ядра Joomla!
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteCond %{REQUEST_URI} !^/index\.php
RewriteCond %{REQUEST_URI} /component/|(/[^.]*|\.(php|html?|feed|pdf|raw|ini|zip|json|file|vcf))$ [NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php [L]
##

Если есть ошибки прошу поправить.

Записан
fmurat
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 1


« Ответ #161 : 05.05.2013, 18:42:17 »

привет всем! как можно прописать htaccess чтобы все посетители определенного раздела сайта (мойсайт.ru/administrator/ и мойсайт.ru/wp-login.php) переправлялись например на главную страницу кроме разрешенных айпи. чтоб я мог попасть в админку Joomla для редактирования. если можно не просто ответ типа можно, а написать код для вставки. спасибо
Записан
dobedobedo
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 2


« Ответ #162 : 28.06.2013, 04:58:17 »

Добрый день!
Можно ли как-то с помощью mod_rewrite сделать форвард с определённого url на внутреннюю страницу сайта?
Например:
все запросы вида http://example.com/addon/(.*) форвардить на http://example.com/addon.html?q=$1

Важно, что это должен быть именно forward, а не redirect!
Записан
dobedobedo
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 2


« Ответ #163 : 28.06.2013, 08:52:26 »

Сам спросил - сам ответил.
Одним .htaccess не обойтись, там можно прописать правило форварда с адресов http://example.com/addon/(.*) на index.php?use_addon=1 (например), а в index.php добавить до вызова рутера что-то вроде if (isset($_REQUEST['use_addon'])) { $_SERVER['REQUEST_URI'] = '/addon.html'; }
Где /addon.html - alias страницы в Joomla.
Записан
prozak
Осваиваюсь на форуме
***

Репутация: +0/-2
Offline Offline

Сообщений: 31


« Ответ #164 : 24.07.2013, 00:12:45 »

А как мне закрыть доступ для IP адреса в определенную категорию статей?
Записан
egorovv
Осваиваюсь на форуме
***

Репутация: +0/-1
Offline Offline

Сообщений: 35


« Ответ #165 : 20.02.2014, 16:55:51 »

Хм, изменил свой .htaccess в соответствии с приведенным выше, реально ощущаю прирост скорости на сайте.
Интересно однако )
Записан
stelp
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Пол: Мужской
Сообщений: 12


« Ответ #166 : 16.03.2014, 11:22:00 »

Может не по теме но задам вопрос:
Вот мой .htaccess на 2.5:
##
# @package      Joomla
# @copyright   Copyright (C) 2005 - 2013 Open Source Matters. All rights reserved.
# @license      GNU General Public License version 2 or later; see LICENSE.txt
##

##
# READ THIS COMPLETELY IF YOU CHOOSE TO USE THIS FILE!
#
# The line just below this section: 'Options +FollowSymLinks' may cause problems
# with some server configurations.  It is required for use of mod_rewrite, but may already
# be set by your server administrator in a way that dissallows changing it in
# your .htaccess file.  If using it causes your server to error out, comment it out (add # to
# beginning of line), reload your site in your browser and test your SEF url's.  If they work,
# it has been set by your server administrator and you do not need it set here.
##

## Can be commented out if causes errors, see notes above.
Options +FollowSymLinks
##
#
#php_flag register_globals Off
#php_flag display_errors Off
#php_flag file_uploads On
#php_flag allow_url_fopen off
#php_flag magic_quotes_gpc On
#php_flag magic_quotes_runtime Off
#
##

## Mod_rewrite in use.
#
DirectoryIndex index.php
RewriteEngine On
RewriteBase /
#
#RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
#RewriteRule ^(.*)$ http://%1/$1 [R=301,R,L]
#
RewriteCond %{REQUEST_URI} ^(/component/option,com) [NC,OR]
RewriteCond %{REQUEST_URI} (/|\.htm|\.php|\.html|/[^.]*)$  [NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*) index.php
#
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://www.quux-corp.de/~quux/.*$ [NC]
RewriteRule .*\.(gif|jpg)$ - [F]
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !.*/foo-with-gif\.html$
RewriteRule ^inlined-in-foo\.(gif|jpg)$ - [F]
#
##

RewriteEngine On

## Begin - Rewrite rules to block out some common exploits.
# If you experience problems on your site block out the operations listed below
# This attempts to block the most common type of exploit `attempts` to Joomla!
#
# Block out any script trying to base64_encode data within the URL.
RewriteCond %{QUERY_STRING} base64_encode[^(]*\([^)]*\) [OR]
# Block out any script that includes a <script> tag in URL.
RewriteCond %{QUERY_STRING} (<|%3C)([^s]*s)+cript.*(>|%3E) [NC,OR]
# Block out any script trying to set a PHP GLOBALS variable via URL.
RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
# Block out any script trying to modify a _REQUEST variable via URL.
RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})
# Return 403 Forbidden header and show the content of the root homepage
RewriteRule .* index.php [F]
#
## End - Rewrite rules to block out some common exploits.

## Begin - Custom redirects
#
# If you need to redirect some pages, or set a canonical non-www to
# www redirect (or vice versa), place that code here. Ensure those
# redirects use the correct RewriteRule syntax and the [R=301,L] flags.
#
## End - Custom redirects

##
# Uncomment following line if your webserver's URL
# is not directly related to physical file paths.
# Update Your Joomla! Directory (just / for root).
##

# RewriteBase /

## Begin - Joomla! core SEF Section.
#
RewriteCond %{HTTP:Accept-Encoding} gzip
RewriteCond %{REQUEST_URI} !^/index.php
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]
#
## End - Joomla! core SEF Section.
##
#
SetOutputFilter DEFLATE
Header set Expires "max-age=29030400, public"
Header unset ETag
FileETag None
#
ExpiresActive On
ExpiresDefault A600
ExpiresByType image/x-icon A2592000
ExpiresByType application/x-javascript A604800
ExpiresByType text/css A604800
ExpiresByType image/gif A2592000
ExpiresByType image/png A2592000
ExpiresByType image/jpeg A2592000
ExpiresByType text/plain A1200
ExpiresByType application/x-shockwave-flash A2592000
ExpiresByType video/x-flv A2592000
ExpiresByType application/pdf A2592000
ExpiresByType text/html A600
#
##

собирал интуитивно, спасибо форуму. Если есть ошибки- подскажите.
Сайт работает нормально, откравается, скорость возросла.
Вот токо Яндекс при проверки URL говорит ( HTTP-статус: Внутренняя ошибка сервера (500))
Индексация тоже пропала.
Все произошло после перехода с Joomla 1.5 на 2.5 и обновления VirtueMart.
Индексация тоже пропала. Из топа сайт вылетел.
Помогите вернуть сайт на прежнее место
Записан
Очередной вебмастер
Завсегдатай
*****

Репутация: +55/-0
Offline Offline

Пол: Мужской
Сообщений: 794


лысый умный дядя


« Ответ #167 : 16.03.2014, 18:17:53 »

Показать текстовый блок
Что то вы нагородили голубчик - по 2 раза одни и теже директивы прописываете, такое ощущение что вы свой собирали из кусков различных вариантов htaccess...
Лично у меня ваш сайт не открывается, да и не только у меня думаю...
Сначала разберитесь с назначением директив, а уж потом сочиняйте свой htaccess... (в помощь  - http://beget.ru/art_htaccess, http://htaccess.ru/)
Записан
jook_2014
Новичок
*

Репутация: +0/-0
Offline Offline

Пол: Мужской
Сообщений: 3



« Ответ #168 : 21.07.2014, 11:15:20 »

Здравствуйте!
Как правильно настроить .htaccess Joomla 1.5:
1-  для ограничения доступа к папкам сайта
2- ограничить загрузку файлов в папку "images" .gif .php

P.S. почитал форум, сделал такой .htaccess (код ниже) для папки "images" с правами доступа: "644" на файлы и "755" на папки. Поправьте меня, если в чем ошибаюсь.
Показать текстовый блок
« Последнее редактирование: 21.07.2014, 23:15:07 от jook_2014 » Записан
Kostelano
Давно я тут
****

Репутация: +27/-0
Offline Offline

Пол: Мужской
Сообщений: 350


Константин


« Ответ #169 : 09.09.2014, 20:13:31 »

Вопрос коротенький, кто в теме, пожалуйста подскажите как сделать.

Нужен редирект в htacess, чтобы все страницы, которые в ссылке содержат jelly_ed_pack.html перенаправляло на главную страницу сайта.

У меня какой-то бот плодит страницы 404, меняя окончание к этой ссылке. Не хочу создавать кучу ссылок в компоненте перенаправления Joomla, а просто решить вопрос посредством htacess.
Записан
oleg-great
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Пол: Мужской
Сообщений: 52



« Ответ #170 : 05.12.2014, 11:55:10 »

Есть смысл добавлять в htaccess
Показать текстовый блок

и не будет ли это конфликтовать с командой

Код:
Order Deny, Allow
Allow from all
Deny from 000.000.000
Deny from 000.000.000

Есть польза от таких добавлений?

Код:
# // Защита папки images от внедрения в нее вирусов
php_flag engine  off
RemoveHandler .phtml .php .php3 .php4 .php5 .php6 .phps
.cgi .exe .pl .asp .aspx .shtml .shtm .fcgi .fpl .jsp .htm .html .wml
AddType application/x-httpd-php-source .phtml .php .php3
.php4 .php5 .php6 .phps .cgi .exe .pl .asp .aspx .shtml .shtm
.fcgi .fpl .jsp .htm .html .wml
Записан
flyingspook
Профи
********

Репутация: +244/-9
Offline Offline

Сообщений: 3772


« Ответ #171 : 05.12.2014, 19:23:19 »

Цитировать
// Защита папки images от внедрения в нее вирусов
Да стоит закрывать папки и не только изображений.
То что юзер-агенты и прочее то это зависит конкретно от вашего случая.
Записан
off_gk
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 3


« Ответ #172 : 12.07.2015, 10:28:17 »

Есть сайт, редирект с www.domain.net на domain.net работает нормально
А вот в случае с www.domain.net/news и прочими редирект происходит не на domain.net/news, а на domain.net
Что это может быть?

Нужно чтобы с www.домен/страница перенаправляло на ту же страницу, на без www в домене.
Вот содержимое .htaccess, домен изменён.
Показать текстовый блок
Записан
draff
Практически профи
*******

Репутация: +171/-5
Offline Offline

Пол: Мужской
Сообщений: 2793


step by step


« Ответ #173 : 12.07.2015, 11:03:54 »

А посмотреть выше, точки в регулярке нужно экранировать, чтоб не считались спецсимволом
Код:
## Редирект с WWW на без WWW
RewriteCond %{HTTP_HOST} ^www\.site\.ru
RewriteRule ^(.*)$ http://site.ru/$1 [R=permanent,L]
##
И удали лишнии RewriteBase /, оставь одну вверху #RewriteBase /
Записан
off_gk
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 3


« Ответ #174 : 12.07.2015, 14:55:37 »

А посмотреть выше, точки в регулярке нужно экранировать, чтоб не считались спецсимволом
Код:
## Редирект с WWW на без WWW
RewriteCond %{HTTP_HOST} ^www\.site\.ru
RewriteRule ^(.*)$ http://site.ru/$1 [R=permanent,L]
##
И удали лишнии RewriteBase /, оставь одну вверху #RewriteBase /
RewriteBase / может находиться в любом месте и должен быть прописанным только один раз?
Пока что получилось добиться только нерабочего редиректа с www на non-www в сочетании с не работающим редиректом с www.domain.net/news на domain.net, теперь просто остаётся www.domain.net/news (что очевидно).

UPD:
Избавился от кривого редиректа после прочтения http://searchengines.guru/archive/index.php/t-787251.html
Цитировать
Код:
<IfModule mod_rewrite.c>
RewriteEngine on #один раз пишется
RewriteBase / #и это тоже пишется один раз

#редирект домена должен находиться в самом вверху
#перед остальными редиректами
RewriteCond %{HTTP_HOST} ^www\.(.+) [NC]
RewriteRule .* http://%1/$0 [L,R=301]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !\..+$
RewriteCond %{REQUEST_URI} !/$
RewriteRule (.*) /$1/ [R=301,L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php [QSA,L]
</IfModule mod_rewrite.c>
И замены прошлого кода на
Код:
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
Разместил как и советуется - вверху.
« Последнее редактирование: 14.07.2015, 17:25:20 от off_gk » Записан
yalo
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Сообщений: 28


« Ответ #175 : 16.07.2015, 12:07:28 »

подскажите, вообще оно возможно или нет? сломала голову уже...

На сайте есть пункт меню (к нему привязан раздел-категории и соответственно материалы).
Этот пункт меню нужно закрыть.
А материалы все проиндексированы в поисковиках неплохо и вот теперь, после закрытия меню, естественно, выдают ошибку 404.

Как сделать редирект сразу ВСЕХ материалов раздела (пункта меню) на главную страницу сайта?
(второй дополнительный вопрос: а не на главную, а на другой пункт меню - возможно?)
Какая команда после RewriteEngine On?
Записан
Леонид
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Сообщений: 14


« Ответ #176 : 10.04.2016, 09:40:16 »

Помогите, пожалуйста, разобраться с проблемой: в .htaccess прописываю редирект со старого адреса страницы на новый в виде:

Redirect /uslugi-po-montaju-pusku-i-naladke/tehnicheskoye-obcluzhivaniye.html http://sitename.ru/tehnicheskoye-obcluzhivaniye.html

Сайт вылетаетает с 500-й ошибкой. Убираю редирект - ошибки нет.
Помогите, пожалуйста, правильно прописать редирект, чтобы и редирект проходил, и сайт ошибку не выдавал.
Заранее спасибо.
Записан
AndreN
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Сообщений: 31


« Ответ #177 : 10.06.2016, 21:46:24 »

Сайт в Joomla 3 на русском и английском.

Настроено, чтобы при входе на сайт из стран СНГ, открывалась русская версия, с других стран - открывается английская версия.
В .htaccess код такой:

RewriteEngine on
# редирект на русскоязычную версию сайта для СНГ
RewriteCond %{REQUEST_URI} ^/$ [NC]
RewriteCond %{HTTP:Accept-Language} (uk|az|am|by|kz|kg|md|ru|tj|tm|uz) [NC]
RewriteRule .* /ru/ [R=302,L]
# редирект на англоязычную версию сайта для всех остальных пользователей
RewriteCond %{REQUEST_URI} ^/$ [NC]
RewriteRule .* http://сайт/en/ [R=301,L]

В меню сайта, кроме всего прочего, есть раздел "контакты". Для русской версии он один, для английской версии он другой.

Есть задача: Когда ходишь по русской версии сайта из Беларуси и заходишь в раздел "контакты", нужно чтобы открывался раздел "контакты" английской версии, а не русской.
Перепробовал разные варианты, но увы...

У кого-то есть идеи, как решить такую задачу?
Спасибо!
Записан
stepan39
Давно я тут
****

Репутация: +18/-0
Offline Offline

Пол: Мужской
Сообщений: 251



« Ответ #178 : 10.04.2017, 15:10:57 »

Всем привет!

Помогите решить следующую проблему:
Нужно из ссылок вида https://rock-catalog.ru/M/72-metallica/songs, https://rock-catalog.ru/Q/2-queen/songs, https://rock-catalog.ru/V/77-van-halen/songs и т.п. убрать /songs

Т.е. сделать 301 редирект: было https://rock-catalog.ru/M/72-metallica/songs, а должно стать https://rock-catalog.ru/M/72-metallica и т.д.

По одной делать затруднительно, ссыл несколько тысяч. Поэтому нужно правило.


П.С. Разработчик, который порушил прежнюю структуру ссылок очень оригинально ответил http://www.joomlathat.com/support/music-collection/old-mc-version-urls


Записан
Страниц: 1 2 3 4 5 [6]   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Powered by SMF 1.1.21 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet