Джумла - с чем ее едят?

1 234
O9
На сайте с 03.05.2016
Offline
38
#21

Ты прав, коллега.

Но действительно, страниц у тебя на сайте много, и решения два:

1. Либо переписать часть кода на уровне PHP - это действительно самое лучшее решение, но оно влетит в копеечку.

2. Либо действительно через .htaccess, но в любом случае этот выход менее элегантный.

Попробуй что-то вроде такого:

RewriteRule "(.*?)/(by,product_name|by,product_in_stock)$" "/$1" [L,R=301]

Это правило будет переадресовывать все URL, который заканчиваются на by,product_name и by,product_in_stock на аналогичные без этих окончаний. Подредактируй это правило под свой сайт. Могут быть и другие окончания, все 18000 ссылок я не просмоатривал.

TF-Studio
На сайте с 17.08.2010
Offline
334
#22
Oliver9:
Судя по теме, автор - не программист и переписывать PHP врядли будет. А без этого добиться удаления дублей надолго врядли выйдет.
TF-Studio, я понимаю, что ты на этом форуме рекламируешься и стремишься казаться профессионалом. Пишешь в темы, касающиеся разработки или администрирования веб-сайтов, и стремишься заполучить заказ. Все мы люди и у каждого свой способ (само)рекламы.
Но все же жизненный совет, веди себя более корректно, врядли клиентам нравятся люди, которые пытаются сделать себе рекламу нападками на коллег-форумчан.

Вы не понимаете сути.

Я не рекламируюсь. как-то не требуется это.

а ваш совет - действительно ужасен.

Всё ещё лучший способ заработка для белых сайтов: GoGetLinks (https://www.gogetlinks.net/?inv=fahbn8).
НШ
На сайте с 09.06.2016
Offline
25
#23

и смысл ругаться? правила 2 необходимо ввести

RewriteRule "(.*?)/(by,product_name|by,product_in_stock)$" "/$1" [L,R=301]

и

RewriteCond %{REQUEST_URI} /index.php
RewriteCond %{QUERY_STRING} ^\z
RewriteRule ^(.*)$ http://logotip.in.ua/? [R=301,L]

или или я неправ?😕

И где почитать про сами правила как создаются и где применяются интернет обширен, а для новичков информации мало, копируй вставляй свои урлы Работает? - молодец!

а научить ?

https://payto.pro/ (https://payto.pro/) - Обмен криптовалюты
V
На сайте с 08.05.2016
Offline
3
#24

Какой компонент магазина установлен?

НШ
На сайте с 09.06.2016
Offline
25
#25

[ATTACH]153025[/ATTACH] - вот это

png 2222222.png
O9
На сайте с 03.05.2016
Offline
38
#26

Правило подобное вот этому:

RewriteRule "(.*?)/(by,product_name|by,product_in_stock)$" "/$1" [L,R=301]

Будет передресовывать всегда. Даже когда пользователь будет открывать эту ссылку. Правило должно быть дополнено RewriteCond, который должен отфильтровать бот по какому-то признаку. К примеру, по юзер-агенту или по пустому рефереру.

Однако, тут надо понимать, что если Гуглбот догадается, что вы ему показываете не такую страницу, как прочим пользователям, то возможны санкции Гугла, так как подобное поведение внешне похоже на читерство. Как всегда, легкий путь - не значит лучший.

Насчет того, где почитать - синтаксис RewriteRule и RewriteCond описан в документации апача, в Гугле введи mod_rewrite apache, и там будет подробное описание этих директив.

TF-Studio:
а ваш совет - действительно ужасен.

Я прямо ответил человеку на прямой вопрос - как добавить данные страницы в robots.txt, а не комментировал, разумно ли это делать.

НШ
На сайте с 09.06.2016
Offline
25
#27

А что если при переименовании htaccess.txt в .htaccess и сайт ложится выдает етернал еррор обратитесь к администратору

obius
На сайте с 19.08.2015
Offline
56
#28
Никита Шестопа:
А что если при переименовании htaccess.txt в .htaccess и сайт ложится выдает етернал еррор обратитесь к администратору

Вероятнее всего в файле .htaccess синтаксические ошибки или отсутствия определенного модуля например mod_rewrite.

Комментируйте директивы по одной или группами, и проверяйте не заработал ли сайт.Такой вот вариант проверки в чем проблема :)

НШ
На сайте с 09.06.2016
Offline
25
#29
obius:
Вероятнее всего в файле .htaccess синтаксические ошибки или отсутствия определенного модуля например mod_rewrite.

Комментируйте директивы по одной или группами, и проверяйте не заработал ли сайт.Такой вот вариант проверки в чем проблема :)

##

# @package Joomla

# @copyright Copyright (C) 2005 - 2012 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

## 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!

#

# 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 something within the component folder,

# or for the site root, or for an extensionless URL, or the

# requested URL ends with one of the listed extensions

RewriteCond %{REQUEST_URI} /component/|(/[^.]*|\.(php|html?|feed|pdf|vcf|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.

НШ
На сайте с 09.06.2016
Offline
25
#30

Как можно определить какой из плагинов нагружает скорость сайт? отключать-включать? Если так делать не пострадает ли сам сайт?

1 234

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий