Форум программистов, компьютерный форум, киберфорум
Apache, htaccess
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.82/22: Рейтинг темы: голосов - 22, средняя оценка - 4.82
0 / 0 / 0
Регистрация: 19.10.2012
Сообщений: 7

Переадресация через htaccess

19.10.2012, 01:06. Показов 4642. Ответов 13
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день.
У меня стоит жетская переадресация с site.cc -> site.ru
Хотелось бы сделать ее "мягкой" (или как это правильно называется?), чтобы при загрузке site.cc людей кидало на site.ru, но если я пропишу site.cc/some.htm (пример), то меня не перекинет, как в моем случае (жесткой), а загрузит нужный файл/страницу.


Сейчас у меня такой код (жестко)


Code
1
2
3
4
5
RewriteEngine on
 
 RewriteCond %{HTTP_HOST} ^site\.cc$
 
 RewriteRule ^.*$ http://site.ru [R=permanent,L]
Пробовал такой
Code
1
2
3
4
5
RerwriteEngine On
 
 RewriteCond %{HTTP_HOST} ^site\.cc$ [NC]
 
 RewriteRule ^(.*) http://site.ru/$1 [L,R=301,QSA]
Результат не тот получился.
1. Если я ввожу site.cc/1234.exe то вместо того чтобы открыть мне этот файл мне выдает site.ru/site.cc/1234.exe
2. Переадресация происходит с site.cc не на site.ru, а site.ru/site.cc - немного странное поведение.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
19.10.2012, 01:06
Ответы с готовыми решениями:

Переадресация поддомена, через .htaccess
mod_rewrite включен, прочитал очень много форумов, но не на одном нормально не объясняют. Надо чтоб games.site.ru работал от...

Правильная переадресация через .htaccess
Подскажите, как сделать правильную переадресацию с домена www.test.ru/forum/viewtopic.php?p=1&id=1.... на ...

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

13
60 / 56 / 5
Регистрация: 17.08.2011
Сообщений: 244
19.10.2012, 01:51
.htaccess
Code
1
2
3
4
5
6
7
8
9
10
11
<IfModule mod_rewrite.c>
Options +FollowSymLinks
RewriteEngine On
 
# вот то что вам надо - замените на домен вашего сайта
RewriteRule (.*) http://www.site.ru/$1 [R=301,L]
 
# а так реализуется переадресация с сайта с www на без www
RewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
</IfModule>
то есть - условие вам не нужно - вы перенаправляете все страницы. и у вас в правиле лишний знак ^ - он то всё и портил.
0
0 / 0 / 0
Регистрация: 19.10.2012
Сообщений: 7
19.10.2012, 02:03  [ТС]
Цитата Сообщение от Alex_VP Посмотреть сообщение
.htaccess
.....[/CODE]
то есть - условие вам не нужно - вы перенаправляете все страницы. и у вас в правиле лишний знак ^ - он то всё и портил.
Скопировал этот код в свой файл заменив только значения. Все равно тот же результат.
1. Если я ввожу site.cc/1234.exe то вместо того чтобы открыть мне этот файл мне выдает site.ru/site.cc/1234.exe
2. Переадресация происходит с site.cc не на site.ru, а site.ru/site.cc - немного странное поведение.
0
60 / 56 / 5
Регистрация: 17.08.2011
Сообщений: 244
19.10.2012, 02:09
оставьте вот эти строки только:
Code
1
2
3
RewriteEngine On
 
RewriteRule (.*) http://www.site.ru/$1 [R=301,L]
я сам когда менял сайту доменное имя - прописал так - этот код до сих пор благополучно работает
0
0 / 0 / 0
Регистрация: 19.10.2012
Сообщений: 7
19.10.2012, 02:14  [ТС]
Цитата Сообщение от Alex_VP Посмотреть сообщение
то есть - условие вам не нужно - вы перенаправляете все страницы. и у вас в правиле лишний знак ^ - он то всё и портил.
Или я не правильно выразился в первом посте.

Попробую по пунктам.
1. Есть домен site.cc
2. Есть другой домен, site.ru (имена отличаются, просто для примера пишу одинаковые).
3. Я знаю, что на site.cc есть скрытые разделы и файлы. Они для меня там. Но люди, кто раньше видел эту ссылку ломятся. Мне нужно, чтобы их просто перекидывало на site.ru. Только с site.cc на site.ru. Других путей они не знают.
4. Я знаю скрытые каталоги и страницы. Поэтому если я уже введу site.cc/somefile.rar - я нормально загружу с хостинга файл.

Теперь дополнительные задачи (подсказали сверху). Если люди вводят www.site.cc их так же перекинет на site.ru
При этом .htaccess я буду дополнять другими редиректами для поддоменов. Надеюсь команды, которые мне напишите, не убьют другие переадресации.

Добавлено через 3 минуты
Цитата Сообщение от Alex_VP Посмотреть сообщение
оставьте вот эти строки только:
Code
1
2
3
RewriteEngine On
 
RewriteRule (.*) http://www.site.ru/$1 [R=301,L]
я сам когда менял сайту доменное имя - прописал так - этот код до сих пор благополучно работает
Конкретно этот код (даже site.ru такой и оставил) при попытке зайти на site.cc (мой домен, где в корне этот .htaccess) кидает меня на http://www.site.ru/site.cc
Если я пытаюсь прописать site.cc/123.bat то кидает на http://www.site.ru/site.cc/123.bat

Т.к. site.ru (именно этот домен из примера, не мой) мне не принадлежит мне выдает

Code
1
2
3
4
5
Not Found
 
The requested URL /site.cc/123.bat was not found on this server.
 
Additionally, a 403 Forbidden error was encountered while trying to use an ErrorDocument to handle the request.
Либо тут ошибка в коде, либо немного вы меня не поняли. Сообщение выше описывает, что я хотел.
0
60 / 56 / 5
Регистрация: 17.08.2011
Сообщений: 244
19.10.2012, 02:14
а почему бы те директории, которые только для вас - не запаролить через htaccess ?
0
0 / 0 / 0
Регистрация: 19.10.2012
Сообщений: 7
19.10.2012, 02:17  [ТС]
Цитата Сообщение от Alex_VP Посмотреть сообщение
а почему бы те директории, которые только для вас - не запаролить через htaccess ?
Тут я думаю не смогу объяснить, если вкратце, то постоянное обращение идет к файлам залитым на хостинг, не только мной, поэтому паролить - раздавать пароли - не самое удачное и не самое правильное в конкретной ситуации.

Т.е. вы меня правильно поняли, что я хочу и код правильный. Что-то мудрит мой хостинг? Или то, что я хочу, не реализовать и стоит просто сделать index.htm с переадресацией моментальной (правда не хотелось бы такой способ)?
0
60 / 56 / 5
Регистрация: 17.08.2011
Сообщений: 244
19.10.2012, 02:24
я в таком случае кладу по всем дирам с файлами файлик index.html следующего содержимого:
HTML5
1
2
3
4
5
6
7
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
    <TITLE></TITLE>
<META http-equiv=Refresh Content="0; Url=../">
</HEAD>
</HTML>
который при попытке открыть директорию перекидывает по ветке директорий вверх до первого нормального index. То есть просмотреть диру не получится - кинет наверх, если имя файла введено неправильно - выдаст 404, если путь и файл верны - его можно скачать
0
0 / 0 / 0
Регистрация: 19.10.2012
Сообщений: 7
19.10.2012, 02:28  [ТС]
Цитата Сообщение от Alex_VP Посмотреть сообщение
я в таком случае кладу по всем дирам с файлами файлик index.html следующего содержимого:
....
Это интересный вариант. Единственное, что я не понял. У вас работает скрипт для .htaccess, а у меня нет, или просто скрипт должен был редиректить именно так, как редиректит, как бы "подменяя" домен, оставляя пути?
0
60 / 56 / 5
Регистрация: 17.08.2011
Сообщений: 244
19.10.2012, 02:31
я перенес сайт на новый домен один в один, и он у меня ссылку site1.ru/path/to/page1.html
переадресует в newsite2.ru/path/to/page1.html
так это правило должно работать
0
0 / 0 / 0
Регистрация: 19.10.2012
Сообщений: 7
19.10.2012, 02:34  [ТС]
который при попытке открыть директорию перекидывает по ветке директорий вверх до первого нормального index.
Получается у меня должен быть index в корне, который редиректит на другой сайт.

Так, созрела мысль. А можно ли сделать так, что сначала в .htaccess идут нужные для меня переадресации (например с поддоменов и т.п.). А уже все остальное, что не попадает туда редиректится например напрямую на site.ru

Т.е. к примеру прописано у меня несколько переадресаций для поддоменов
1.site.cc -> site.cc/secretfile.txt
2.site.cc -> site.cc/secret/index.htm
3.site.cc -> site.cc/hello.bat
И так обрабатывается. Но если к примеру кто-то зайдет на 444.site.cc или site.cc/nofile.txt то его сразу редиректнит на site.ru
Такое возможно?

Добавлено через 1 минуту
Цитата Сообщение от Alex_VP Посмотреть сообщение
я перенес сайт на новый домен один в один, и он у меня ссылку site1.ru/path/to/page1.html
переадресует в newsite2.ru/path/to/page1.html
так это правило должно работать
Да, я теперь так и подумал, мне не это нужно было. Хотя, у меня переносилось с
site1.ru/path/to/page1.html не на newsite2.ru/path/to/page1.html
а так newsite2.ru/site1.ru/path/to/page1.html
добавляя домен старого сайта. Не знаю, почему. В любом случае, я не то хотел.
0
60 / 56 / 5
Регистрация: 17.08.2011
Сообщений: 244
19.10.2012, 10:21
и все поддомены являются алиасами к основному домену?
0
 Аватар для Илья Федин
887 / 353 / 1
Регистрация: 12.08.2012
Сообщений: 4,401
Записей в блоге: 5
19.10.2012, 17:13
LostMyPass,
Code
1
2
RewriteEngine on
RewriteRule / http://site.ru [R=301,L,QSA]
0
0 / 0 / 0
Регистрация: 19.10.2012
Сообщений: 7
21.10.2012, 12:17  [ТС]
Code
1
RedirectMatch ^/$ http://site.ru/
Такой код помог
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
21.10.2012, 12:17
Помогаю со студенческими работами здесь

Переадресация в .htaccess
На выделенном сервере есть сайт с адресом вида http://xxx.xxx.xxx.xxx:31/dir/ Но вид некрасивый, у своего регистратора создали домен 3-го...

Переадресация в htaccess
Всем доброго времени суток! Пытаюсь обрезать ссылку с помощью htaccess Нужно чтобы с adres.ru/cat/?abc=рандом цифр шла переадресация на...

Переадресация поддоменов в htaccess
Здравствуйте. На локальном хосте есть сайт inblog.ru, нужно сделать так чтобы он делал перерегистрацию с всех под доменов в папку sub. К...

Правильная переадресация в htaccess
Приветствую! Подскажите, как правильно сделать переадресацию из папок по маске, не затрагивая при этом поддомены? К примеру, есть...

Htaccess переадресация на домен
Привет всем, помогите, пожалуйста, с переадресацией. Мне нужно чтобы все запросы на любые страницы, допустим, http://site.ru/...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru