Právě je 25 dub 2024 02:36

Všechny časy jsou v UTC + 1 hodina [ Letní čas ]




Odeslat nové téma Odpovědět na téma  [ Příspěvků: 8 ] 
Autor Zpráva
 Předmět příspěvku: Drupal - přesměrování pomocí .htaccess
PříspěvekNapsal: 13 říj 2009 14:13 

Registrován:
13 říj 2009 14:07
Příspěvky:
19
Bydliště:
Jičín
Zdravím, prosim Vás o radu a pomoc. Potřebuji přesměrovat staré adresy webu př. kontakty.html z bývalého webhostingu ale stejné domény na tu samou doménu vašeho webhostingu.
Např.
http://www.example.cz/kontakty.html
na http://www.example.cz/contact

Web běží na Drupale 6.

Zkoušela jsem toto:
RewriteEngine on
RewriteRule /kontakty.html http://www.jspapirhorice.cz/contact [R=301]

ale nefunguje to. Taky jsem se koukala na http://www.jakpsatweb.cz

####### Redirecty ruznych stranek #######
# syntaxe:
# Redirect kód relativní-stará-adresa http://nová-adresa
Redirect 301 /css_eot.htm http://www.jakpsatweb.cz/css/css-eot-weft-font.html
Redirect 301 /css_jednotky.htm http://www.jakpsatweb.cz/css/css-jednotky.html
Redirect 301 /css_kaskadovani.htm http://www.jakpsatweb.cz/css/css-kaskadovani.html

ale taky mi to nefunguje. Děkuji za jakoukoli pomoc. l.lenek

_________________
Pořád jsem játro a lama :)


Nahoru
 Profil  
 
 Předmět příspěvku: Re: .htaccess
PříspěvekNapsal: 13 říj 2009 15:17 
C4 podpora
C4 podpora

Registrován:
29 čer 2009 20:53
Příspěvky:
263
Dobrý den,

tam je víc problémů, jednak Drupal má v .htaccess nějaká rewrite pravidla, zejména je tam:

Kód:
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !=/favicon.ico
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]


Toto pravidlo "požere" všechny URL kromě URL, které odpovídají názvům souborů a adresářů. Díky modifikátoru L (L = last, poslední) se "nedostane" na další případná rewrite pravidla, která by byla umístěna pod tím. Z toho důvodu dejte vaše pravidla úplně na začátek .htaccess souboru (pokud je máte např. úplně na konci, tak se na ně vůbec nedostane).

Další problém je v samostném pravidle, já bych použil:

Kód:
RewriteRule ^kontakty\.html$ http://www.jspapirhorice.cz/contact [QSA,R=301]


Jednak jsem místo /kon.. dal kon (tj. bez lomítka na začátku), před tečku jsem dal zpětné lomítko (tečka bez zpětného lomítka před ní odpovídá totiž jakémukoliv znaku). Znaky ^ a $ označují začátek a konec řetězce. Modifikátor QSA umožní přenos i případných parametrů. Takže zkuste úplně na začátek .htaccess souboru dát:

Kód:
RewriteEngine On
RewriteRule ^kontakty\.html$ http://www.jspapirhorice.cz/contact [QSA,R=301]


Napište, jak to dopadlo.

_________________
Jan Vítek
Webhosting C4
http://www.c4.cz/


Nahoru
 Profil  
 
 Předmět příspěvku: Re: .htaccess
PříspěvekNapsal: 13 říj 2009 16:13 

Registrován:
13 říj 2009 14:07
Příspěvky:
19
Bydliště:
Jičín
Bohužel mi to nefunguje. Kopíruju sem celé .htaccess pro ukázku:

RewriteEngine On
RewriteRule ^kontakty\.html$ http://www.jspapirhorice.cz/contact [QSA,R=301]
RewriteRule ^kde\.html$ http://www.jspapirhorice.cz/contact [QSA,R=301]
#
# Apache/PHP/Drupal settings:
#

# Protect files and directories from prying eyes.
<FilesMatch "\.(engine|inc|info|install|module|profile|test|po|sh|.*sql|theme|tpl(\.php)?|xtmpl|svn-base)$|^(code-style\.pl|Entries.*|Repository|Root|Tag|Template|all-wcprops|entries|format)$">
Order allow,deny
</FilesMatch>

# Don't show directory listings for URLs which map to a directory.
Options -Indexes

# Follow symbolic links in this directory.


# Make Drupal handle any 404 errors.
ErrorDocument 404 /index.php

# Force simple error message for requests for non-existent favicon.ico.
<Files favicon.ico>
# There is no end quote below, for compatibility with Apache 1.3.
ErrorDocument 404 "The requested file favicon.ico was not found.
</Files>

# Set the default handler.
DirectoryIndex index.php

# Override PHP settings. More in sites/default/settings.php
# but the following cannot be changed at runtime.

# PHP 4, Apache 1.
<IfModule mod_php4.c>
php_value magic_quotes_gpc 0
php_value register_globals 0
php_value session.auto_start 0
php_value mbstring.http_input pass
php_value mbstring.http_output pass
php_value mbstring.encoding_translation 0
</IfModule>

# PHP 4, Apache 2.
<IfModule sapi_apache2.c>
php_value magic_quotes_gpc 0
php_value register_globals 0
php_value session.auto_start 0
php_value mbstring.http_input pass
php_value mbstring.http_output pass
php_value mbstring.encoding_translation 0
</IfModule>

# PHP 5, Apache 1 and 2.
<IfModule mod_php5.c>
php_value magic_quotes_gpc 0
php_value register_globals 0
php_value session.auto_start 0
php_value mbstring.http_input pass
php_value mbstring.http_output pass
php_value mbstring.encoding_translation 0
</IfModule>

# Requires mod_expires to be enabled.
<IfModule mod_expires.c>
# Enable expirations.
ExpiresActive On

# Cache all files for 2 weeks after access (A).
ExpiresDefault A1209600

# Do not cache dynamically generated pages.
ExpiresByType text/html A1
</IfModule>

# Various rewrite rules.
<IfModule mod_rewrite.c>
RewriteEngine on

# If your site can be accessed both with and without the 'www.' prefix, you
# can use one of the following settings to redirect users to your preferred
# URL, either WITH or WITHOUT the 'www.' prefix. Choose ONLY one option:
#
# To redirect all users to access the site WITH the 'www.' prefix,
# (http://example.com/... will be redirected to http://www.example.com/...)
# adapt and uncomment the following:
# RewriteCond %{HTTP_HOST} ^example\.com$ [NC]
# RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301]
#
# To redirect all users to access the site WITHOUT the 'www.' prefix,
# (http://www.example.com/... will be redirected to http://example.com/...)
# uncomment and adapt the following:
# RewriteCond %{HTTP_HOST} ^www\.example\.com$ [NC]
# RewriteRule ^(.*)$ http://example.com/$1 [L,R=301]

# Modify the RewriteBase if you are using Drupal in a subdirectory or in a
# VirtualDocumentRoot and the rewrite rules are not working properly.
# For example if your site is at http://example.com/drupal uncomment and
# modify the following line:
# RewriteBase /drupal
#
# If your site is running in a VirtualDocumentRoot at http://example.com/,
# uncomment the following line:
# RewriteBase /

# Rewrite URLs of the form 'x' to the form 'index.php?q=x'.
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !=/favicon.ico
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]
</IfModule>

# $Id: .htaccess,v 1.90.2.3 2008/12/10 20:04:08 goba Exp $
RewriteEngine on
RewriteCond %{HTTP_HOST} ^jspapirhorice.cz
RewriteRule (.*) http://www.jspapirhorice.cz/$1 [R=301,QSA,L]



Děkuji za případnou další pomoc. l.lenek

_________________
Pořád jsem játro a lama :)


Nahoru
 Profil  
 
 Předmět příspěvku: Re: .htaccess
PříspěvekNapsal: 13 říj 2009 16:28 
C4 podpora
C4 podpora

Registrován:
29 čer 2009 20:53
Příspěvky:
263
Máte pravdu, ještě je potřeba použít modifikátor L, aby se další pravidla (pod tím) nebrala v úvahu (pokud pravidlo uspěje). Takže rewrite pravidlo by mělo vypadat takto:

Kód:
RewriteRule ^kontakty\.html$ http://www.jspapirhorice.cz/contact [QSA,L,R=301]

_________________
Jan Vítek
Webhosting C4
http://www.c4.cz/


Nahoru
 Profil  
 
 Předmět příspěvku: Re: .htaccess
PříspěvekNapsal: 13 říj 2009 17:21 

Registrován:
13 říj 2009 14:07
Příspěvky:
19
Bydliště:
Jičín
Děkuji moc :), přesměrování funguje skvěle!

_________________
Pořád jsem játro a lama :)


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Drupal - přesměrování pomocí .htaccess
PříspěvekNapsal: 15 lis 2012 15:13 

Registrován:
15 lis 2012 15:11
Příspěvky:
2
Dobrej, mně by zajímalo jak by to vypadalo kdyby rovnou z exaple.cz, jsem chtěl přejít na example.cz/example. Děkuji za odpověď. P.T.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Drupal - přesměrování pomocí .htaccess
PříspěvekNapsal: 15 lis 2012 17:13 
C4 podpora
C4 podpora

Registrován:
29 čer 2009 20:53
Příspěvky:
263
V .htaccess by pravidlo vypadalo nějak takto:

Kód:
RewriteRule ^$ http://www.example.org/example [QSA,L,R]

_________________
Jan Vítek
Webhosting C4
http://www.c4.cz/


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Drupal - přesměrování pomocí .htaccess
PříspěvekNapsal: 15 lis 2012 17:19 

Registrován:
15 lis 2012 15:11
Příspěvky:
2
funguje. díky


Nahoru
 Profil  
 
Zobrazit příspěvky za předchozí:  Seřadit podle  
Odeslat nové téma Odpovědět na téma  [ Příspěvků: 8 ] 

Všechny časy jsou v UTC + 1 hodina [ Letní čas ]


Kdo je online

Uživatelé procházející toto fórum: Žádní registrovaní uživatelé a 0 návštevníků


Nemůžete zakládat nová témata v tomto fóru
Nemůžete odpovídat v tomto fóru
Nemůžete upravovat své příspěvky v tomto fóru
Nemůžete mazat své příspěvky v tomto fóru
Nemůžete přikládat soubory v tomto fóru

Hledat:
Přejít na:  
cron
FTP Uploader
Staňte se naším zákazníkem!
Hledáme kolegy
Tvorba web stránek Hosting
Návody pro C4

© 2009-2024 ČESKÝ WEBHOSTING s.r.o. Kontaktní e-mail: forum@c4.cz
Diskuzní fórum využívá technologie: phpBB, phpBB-SEO.com, phpBB.cz