PDA

Zobacz pełną wersję : Problem z adresami



cangaris1
18-06-2013, 14:01
Witam, google masowo zindeksowało mi 2 opcje artykułu:

1. moja-domena.pl/blog/kategoria/nazwa-artykulu oraz
2. moja-domena.pl/component/content/article/blog/kategoria/nazwa-artykulu

mam coś takiego na masową skalę - czy jest jakiś sposób na
przekierowanie wszystkich adresów typu 2 na 1?

jakiś plugin? pozdrawiam!
Z góry dziękuję za odp!

komodore
18-06-2013, 21:03
Co to znaczy masowo? 10? 100? 1000?
Przy małej ilości skorzystaj z przekierowań dostępnych w joomla, a przy większej przekierowanie przez regułę w .htaccess.

cangaris1
18-06-2013, 21:46
Witam! Mam taką sytuację w 2 serwisach po 50 podstron. Nanoszenie 100 przekierowań jest uciążliwe, tym bardziej, że jeden serwis jest blogiem i nieustannie trzeba byłoby taki zabieg stosować. O jakiem regule .htaccess mowa? Mógłbym prosić o gotowca, bo nie jestem aż tak dobry w tym. Pozdrawiam!

cangaris1
19-06-2013, 19:51
Pomoże ktoś? :)

komodore
19-06-2013, 22:17
Witam, google masowo zindeksowało mi 2 opcje artykułu:

1. moja-domena.pl/blog/kategoria/nazwa-artykulu oraz
2. moja-domena.pl/component/content/article/blog/kategoria/nazwa-artykulu

mam coś takiego na masową skalę - czy jest jakiś sposób na
przekierowanie wszystkich adresów typu 2 na 1?


W pliku .htaccess (jest tam opisane miejsce na własne przekierowania) wstaw:


RewriteRule ^component/content/article/(.*) $1

cangaris1
20-06-2013, 01:16
Witam. Niestety nie działa RewriteRule ^component/content/article/(.*) $1 - po wrzuceniu do htaccess zero jakiejkolwiek reakcji,
jakiś kolejny pomysł? Pozdrawiam.

komodore
20-06-2013, 09:29
To przekierowanie co podałem wydaje się być niepotrzebne. Przeglądałem jeszcze raz oryginalny plik z Joomla
i powinien zadziałać.

Sprawdź, czy twój serwer obsługuje konfigurację przez .htaccess (nazwa pliku zaczyna się od kropki).

Jeśli tak to skopiuj orginalny htaccess.txt do .htaccess.

cangaris1
20-06-2013, 18:14
Przedstawiam mój htaccess, wszytsko inne działa poprawnie, ale reguła - RewriteRule ^component/content/article/(.*) $1 - nie daje nic.
Jestem na serwerze linuxpl.com.
Pozdrawiam.



##
# @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
RewriteCond %{HTTP_HOST} ^www.zeroograniczen.com$ [NC]
RewriteRule ^(.*)$ http://zeroograniczen.com/$1 [R=301,L]


## 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 ********** 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.
Redirect 301 /cytaty http://cytaty.zeroograniczen.com

cangaris1
21-06-2013, 22:13
Czy jest ktoś wstanie pomóc? :)

komodore
21-06-2013, 23:22
Po to twórcy joomla oznaczyli miejsce na własne przekierowania, żeby z niego korzystać, a nie rozrzucać przekierowania po całym bloku


Fragment
## 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.
#
# RewriteCond %{HTTP_HOST} ^www.zeroograniczen.com$ [NC]
# RewriteRule ^(.*)$ http://zeroograniczen.com/$1 [R=301,L]

# 302 daję na czas testowania poprawności konfiguracji póżniej jak wszystko gra zmieniam na 301.

component/content/article/REQUEST_URI} ^/?component/content/article/(.*)$
RewriteRule .* http://zeroograniczen.com%1 [R=302,L]

Redirect 301 /cytaty http://cytaty.zeroograniczen.com
ECnd - Custom redirects

cangaris1
21-06-2013, 23:52
To też nie działa. Ok! Poddaje się, dodam przekierowania z palca x50 razy, dzięki za szczere chęci. Pozdrawiam! ;)

komodore
22-06-2013, 07:20
Nic dziwnego, że nie działa. Zapisał się tylko fragment i to jeszcze z jakiegoś etapu edycji.
Niestety nie sprawdziłem po wysłaniu. Sory.
Miało to wyglądać tak:



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


RewriteCond %{HTTP_HOST} ^www.zeroograniczen.com$ [NC]
RewriteRule ^(.*)$ http://zeroograniczen.com/$1 [R=301,L]


# R=302 daję na czas testowania poprawności konfiguracji później jak wszystko gra zmieniam na R=301.
# dzięki czemu nie trzeba w trakcie testów czyścić przeglądarek,
# które nie chcą się odświeżać przez jakiś czas po przekierowaniu 301
RewriteCond %{REQUEST_URI} ^/?component/content/article/(.*)$
RewriteRule .* http://zeroograniczen.com%1 [R=302,L]


Redirect 301 /cytaty http://cytaty.zeroograniczen.com


#End - Custom redirects




Przeniosłem do tego bloku pozostałe przekierowania, które miałeś na początku bloku rewrite i końcu pliku
więc w usuń je z tamtych miejsc aby się nie dublowały.

Nie wiem skąd się te adresy biorą, tak więc nie wiem czy to przekierowanie nie zakłóci pracy witryny.
W przypadku gdy będzie istniał tylko adres "ze wstawką" możesz otrzymać błąd.

Może wypowie się w tej kwestii ktoś, kto ma większe pojęcie o adresach generowanych przez Joomla.