X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость ( Вход | Регистрация )

2 страниц V   1 2 >
Открыть тему
Тема закрыта
> А вдруг кто-то с htaccess на ты
mvk14
mvk14
Topic Starter сообщение 14.7.2015, 22:56; Ответить: mvk14
Сообщение #1


Частый гость
**

Группа: User
Сообщений: 86
Регистрация: 3.10.2014
Из: Ukraine
Поблагодарили: 1 раз
Репутация:   0  


Добрый вечер!

что-то ставка на гугл с мануалами и примерами не сработала((

есть простенький самописный движок.

страницы
site.ru/index.php
site.ru/index.php?
site.ru/index.php?act


сейчас являются дубликатами Главной. как сделать в htaccess, чтобы с этих адресов редиректило на "/" ?
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
JamesM12
JamesM12
сообщение 15.7.2015, 0:36; Ответить: JamesM12
Сообщение #2


Частый гость
**


Группа: User
Сообщений: 99
Регистрация: 30.10.2012
Поблагодарили: 27 раз
Репутация:   2  


Можно просто вставить в .htaccess

Код
Redirect 301 index.php [url="http://www.maultalk.com/go.php?http://site.ru/"]http://site.ru/[/url]
Redirect 301 index.php? [url="http://www.maultalk.com/go.php?http://site.ru/"]http://site.ru/[/url]
Redirect 301 index.php?act [url="http://www.maultalk.com/go.php?http://site.ru/"]http://site.ru/[/url]


Или же вот так

Код
RewriteEngine On
RewriteBase /
RewriteCond %{THE_REQUEST} index\.php
RewriteRule ^index\.php$ http://example\.com/ [R=301,L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index\.php [L]


Сообщение отредактировал JamesM12 - 15.7.2015, 0:39


--------------------
Создание, исправление, доработка, лечение ваших проектов :)
Linux, PHP, Javascript, HTML, CSS, Wordpress since 2008 - wpmastering.pro
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
mvk14
mvk14
Topic Starter сообщение 15.7.2015, 1:05; Ответить: mvk14
Сообщение #3


Частый гость
**

Группа: User
Сообщений: 86
Регистрация: 3.10.2014
Из: Ukraine
Поблагодарили: 1 раз
Репутация:   0  


а что значат эти строки:
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index\.php [L]

именно они спасают от index.php? и index.php?act
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
x64
x64
сообщение 15.7.2015, 8:31; Ответить: x64
Сообщение #4


F.A.L.L.O.U.T.
*******

Группа: Super Moderator
Сообщений: 3427
Регистрация: 30.6.2011
Из: Железнодорожный (Балашиха)
Поблагодарили: 2749 раз
Репутация:   289  


RewriteCond
RewriteRule


--------------------


Поблагодарили: (1)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
mvk14
mvk14
Topic Starter сообщение 15.7.2015, 10:52; Ответить: mvk14
Сообщение #5


Частый гость
**

Группа: User
Сообщений: 86
Регистрация: 3.10.2014
Из: Ukraine
Поблагодарили: 1 раз
Репутация:   0  


уже почти ясно, т.е. проверка если содержимое строки запроса - не реально существующий файл и не каталог, то редирект на index.php

RewriteRule . /index\.php [L] - а что означает точка между RewriteRule "/index\.php" ?
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
x64
x64
сообщение 15.7.2015, 12:53; Ответить: x64
Сообщение #6


F.A.L.L.O.U.T.
*******

Группа: Super Moderator
Сообщений: 3427
Регистрация: 30.6.2011
Из: Железнодорожный (Балашиха)
Поблагодарили: 2749 раз
Репутация:   289  


Точка в регулярных выражениях обозначает буквально «любой символ». В данном случае — любой запрос.
Обратный слеш перед второй точкой — лишний, его лучше убрать.


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
mvk14
mvk14
Topic Starter сообщение 15.7.2015, 13:10; Ответить: mvk14
Сообщение #7


Частый гость
**

Группа: User
Сообщений: 86
Регистрация: 3.10.2014
Из: Ukraine
Поблагодарили: 1 раз
Репутация:   0  


«любой символ» - имеется ввиду ведь 1 символ? разве не так надо: .*

перед второй точкой слеш экранирующий вроде

а за счет чего при этой конструкции пропускаются полезные адреса, например "index.php?act=avtor&id=4" - разве ни одно из RewriteCond не сработает?
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
x64
x64
сообщение 15.7.2015, 13:38; Ответить: x64
Сообщение #8


F.A.L.L.O.U.T.
*******

Группа: Super Moderator
Сообщений: 3427
Регистрация: 30.6.2011
Из: Железнодорожный (Балашиха)
Поблагодарили: 2749 раз
Репутация:   289  


Начальных/концевых ограничителей нет, поэтому
Цитата(x64 @ 15.7.2015, 11:53) *
любой запрос


Цитата(mvk14 @ 15.7.2015, 12:10) *
а за счет чего при этой конструкции пропускаются полезные адреса

Не пропускаются. Шаблон должен соответствовать пути (не включая ведущий слеш). Знак вопроса и то, что за ним, являются параметрами. Если нужно чекать и их, в помощь RewriteCond и группа доступных %{NAME_OF_VARIABLE}


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
mvk14
mvk14
Topic Starter сообщение 15.7.2015, 13:51; Ответить: mvk14
Сообщение #9


Частый гость
**

Группа: User
Сообщений: 86
Регистрация: 3.10.2014
Из: Ukraine
Поблагодарили: 1 раз
Репутация:   0  


агаа... и последнее "белое пятно" - вот мы правилами это вcе собрали и сделали RewriteRule на index.php

но ведь тогда index.php будет в кэше. и это будет дубликатом к "/"

ну, вы поняли, да - в кэше поисковика будет храниться и site.ru, и site.ru/index.php
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
x64
x64
сообщение 15.7.2015, 14:09; Ответить: x64
Сообщение #10


F.A.L.L.O.U.T.
*******

Группа: Super Moderator
Сообщений: 3427
Регистрация: 30.6.2011
Из: Железнодорожный (Балашиха)
Поблагодарили: 2749 раз
Репутация:   289  


/index.php редиректим на /
Сами правила производят внутренний редирект (на стороне сервера, клиенты о нём не знают).


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
2 страниц V   1 2 >
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Оцените сайт на рыболовную тематику. Все кто любят критиковать прошу сюда.
3 alexandrrr 422 14.12.2017, 23:28
автор: alexandrrr
Открытая тема (нет новых ответов) Facebook палит прокси. Кто как решает эту проблему?
28 Twickbot 3638 14.12.2017, 20:26
автор: galikfor
Открытая тема (нет новых ответов) 10 бесплатных сервисов Google для бизнеса, о которых мало кто слышал
18 jack 5953 14.12.2017, 12:29
автор: Akeeloq
Горячая тема (нет новых ответов) Тема имеет прикрепленные файлыКто и что читает?
Любимые и не только, книги.
251 Levels 31185 11.12.2017, 16:47
автор: Catherine_Molli
Открытая тема (нет новых ответов) Кто продвигает сайт в яндексе массовой закупкой ссылок?
13 aleggator 1930 8.12.2017, 4:19
автор: KvadroJ


 



RSS Текстовая версия Сейчас: 16.12.2017, 17:28
Дизайн