- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
В 2023 году 36,9% всех DDoS-атак пришлось на сферу финансов
А 24,9% – на сегмент электронной коммерции
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Здравствуйте, уважаемые форумчане.
Возник такой вопрос. Убираю дубли страниц из индекса с помощью настроек файла .htaccess
у меня сейчас настроено так, что бы в конце адреса ставился слеш /
site.ru/news/123/
это вроде правильно, но вот слеш добавляется и в такой адрес
site.ru/news/file.html/
Это правильно? и если нет, то что прописать, что бы в конечных страницах заканчивающихся на
.html
не ставился слеш
Вот что у меня прописано в .htaccess
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.kresla-market.ru
RewriteRule (.*) http://kresla-market.ru/$1 [R=301,L]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\..*\ HTTP/
RewriteRule ^index\..*$ http://kresla-market.ru/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule ^(.*)$ /$1/ [R=301,L]
И еще стандартно стояли такие строки, как я понял тем кодом, что выше я их заменил на нужные мне, тогда можно вот это удалить совсем
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^((rus|ukr|blr|de|frn|eng)[/$]){0,1}([^?]+)?$ index.php?lang=$2&link=$3 [NC,QSA,L]
Или это для ЧПУ надо
??
Это правильно?
Слеш означает каталог. В котором будут искаться индексные файлы. (отдаваться сервером)
file.html - так вполне может называться и каталог
Без слеша и при наличии расширения - вначале файл, потом каталог
Без слеша и без расширения - тут не уверен, что первично но вроде бы также: файл, потом каталог.
Исходя из вышесказанного "правильно" зависит от того, что нужно.
Если file.html - это файл, тогда file.html/ - не правильно.
Слеш означает каталог. В котором будут искаться индексные файлы. (отдаваться сервером)
file.html - так вполне может называться и каталог
Без слеша и при наличии расширения - вначале файл, потом каталог
Без слеша и без расширения - тут не уверен, что первично но вроде бы также: файл, потом каталог.
Исходя из вышесказанного "правильно" зависит от того, что нужно.
Если file.html - это файл, тогда file.html/ - не правильно.
У меня .html это файл.
Подскажите тогда что прописать в файле htaccess исходя из написанрного мной в первом посте, что бы после .html автоматом не ставился слэш?
И еще стандартно стояли такие строки, как я понял тем кодом, что выше я их заменил на нужные мне, тогда можно вот это удалить совсем
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^((rus|ukr|blr|de|frn|eng)[/$]){0,1}([^?]+)?$ index.php?lang=$2&link=$3 [NC,QSA,L]
Или это для ЧПУ надо
??
Первая строчка - дублируется у вас.
Вторая - исключение для реально существующих файлов. (тоже продублировали)
Третья - исключение для физ. директорий.
Четвёртая ЧПУ для языковых версий похоже.
что бы после .html автоматом не ставился слэш?
Вот эта строка подставляет слеш ВЕЗДЕ:
RewriteCond %{REQUEST_URI} !(.*)/$
Как написать, что бы исключить .html - сейчас не подскажу. Не настолько хорошо знаю синтаксис htaccess: чтобы уверено что-то подсказать - нужно экспериментировать.
В помощь.
Спасибо всем за помощь.
Все оказалось просто. Редирект у меня работает правильно, просто в таком url
site.ru/news/file.html/
у меня ставится слеш потому, что file.html это у меня название папки, а не файла.
Если файл, то слеш не ставится, так что все работает правильно.
Я думал что если стоит точка, то после нее указывается расширение и нельзя в названиях папок использовать точку.
Век живи-век учись и все равно дураком помрешь.
:(
Когда-то страницы без .html не индексировались бинк, толи яху (честно говоря непомню). Но сейчас вроде все норм.