Apache: 301 redirect - karakteri / - AlbDEVs

×
Albanian Forums, Zerion Zeri yt Zeri Info, Forumi Shqiptar Al Virtual, Diskutime, Biseda, Chat Njofje, Informatika, Teknologjia, Gazeta Tema, Gazetat Shqiptare, Bota Sot, www Channel Albania, Telegrafi Kosovo, Ballkani Web, Gazeta Lajme shqip, Lajmet e Fundit Shqiperia Kosova, Dita, Panorama, Kryeartikull, Faqja Kryesore, Video Shqip, Muzike Shqipe, Njoftime, Lajmerime, Temat Online, Gazetat, Kosovare, Shtypi Ditor, Sporti Shqiptar, Dashuria, Pyetje Pergjigje, Keshilla, Ndihme, Webmaster Shqiptar, Familja, Shqiptaria, Muzika, Receta Gatimi, Imazhe, Vipat-shqiptar, Aktualiteti
Media Sociale
Mesazhe Private
Shqiptaret duke lexuar tema interesante dhe te ndryshme
Tema re

Apache: 301 redirect - karakteri /

Apache: 301 redirect - karakteri /

· 19 · 2659

  • Postime: 85
  • Karma: +0/-0
  • Gjinia: Mashkull

ne: 14-03-2011, 12:50:05
Pershendetje,

Dua te bej disa ndryshime ne nje website nepermjet 301 redirects. Shpresoj qe dikush te me ndihmoj.

C'fare kerkoj eshte qe te gjitha URL-ve tu behet redirect ne formen e meposhtme:

"http://www.domein.com/category/page"

Dmth te behet gjithmone redirect per:
.../category/ (gjithmone ME shenjen / ) 
.../category/page (gjithmone PA shenjen / )

Aldo

  • Postime: 28589
  • Karma: +48/-5
  • Gjinia: Mashkull

#1 ne: 14-03-2011, 14:11:57
Dicka si kjo te nevojitet?

redirect 301 /category/page/ /category/page

Gjithsesi une nuk arrij te kuptoj mire. Jep dhe nje here nje shembull te url-se aktuale dhe ku deshiron qe ajo te ridrejtoje, pra strukturen e saj.

  • Postime: 85
  • Karma: +0/-0
  • Gjinia: Mashkull

#2 ne: 14-03-2011, 14:26:05
Olti,

Mbas "category" duhet te vij gjithmone nje "/". Ndersa mbas "page", karakteri "/" duhet te eleminohet. Dmth struktura e linkut duhet te jete gjithmone e tipit:

www.domain.com/category/
dhe
www.domain.com/category/page

P.sh.: n.q.s. dikush shtyp ne brouwer:
www.domain.com/category duhet bere redirect tek www.domain.com/category/
ose
www.domain.com/category/page/ duhet bere redirect tek www.domain.com/category/page

Shpresoj te jeme i qarte. :)

  • Postime: 28589
  • Karma: +48/-5
  • Gjinia: Mashkull

#3 ne: 14-03-2011, 14:33:08
Atehere eshte  thjeshte fare, sic dhe ta dhashe mesiper.

Kodi: [Zgjidh]
redirect 301 /category http://www.domain.tld/category/

redirect 301 /category/page/ http://www.domain.tld/category/page

  • Postime: 85
  • Karma: +0/-0
  • Gjinia: Mashkull

#4 ne: 14-03-2011, 15:42:20
Sipas kesaj menyre duhet ta bej kete me cdo link individualisht. Cfare do doja une do ishte qe cdo link te behej automatikisht redirect pa qene nevoja qe te shkruhet nje rrjesht apostafat per cdo faqe ne .htaccess

  • Postime: 168
  • Karma: +0/-0
  • Gjinia: Mashkull

#5 ne: 14-03-2011, 23:47:26
Kjo do te ishte nje e pergjitheshme:

Kodi: [Zgjidh]
<IfModule mod_rewrite.c>
Options +FollowSymlinks
RewriteEngine on
RewriteBase /

# kjo i heq fraksionin page
# Psh /category/page/ behet /category/page
RewriteRule ^(.*)/(.*)/ http://www\.shembull\.com/$1/$2 [R=301,L]

# kjo i shton fraksionin kategoris kur kategoria eshte pa te
# Psh /category behet /category/
RewriteCond %{REQUEST_URI} !/$
RewriteCond %{REQUEST_URI} !/.*/.*$
RewriteRule ^(.*) http://www\.shembull\.com/$1/ [R=301,L]
</IfModule>

Shenim 1: ndrysho domainin per ta pershtatur me faqen tende nga shembull\.com ne domain\.tld
Shenim 2: Ato rreshtat me # perpara mund ti fshish pasi ke kuptuar logjiken e kodit

Gjithesesi, per te te dhene nje pergjigje me te sakte tregom ku e ke live strukturen aktuale, dhe si do ta besh.

-Shefi.

  • Postime: 85
  • Karma: +0/-0
  • Gjinia: Mashkull

#6 ne: 15-03-2011, 15:59:53
Flm per pergjigjen Shefqet, vetem se ka dicka qe nuk shkon.

Fraksioni hiken ose rivendoset ku duhet, por link transformohet ne:

(kur ne browser shenohet www.domain.com/category):
www.domain.com/index.php/

(kur shenohet www.domain.com/category/page/):
www.domain.com/index.php/page

Ndoshta dicka e vogel te kodi qe me ke derguar?

  • Postime: 28589
  • Karma: +48/-5
  • Gjinia: Mashkull

#7 ne: 15-03-2011, 16:08:44
Posto ketu strukturen e linqeve. Nuk ke nevoje te postosh tere url-ne, vetem pjesen e linqeve qe deshiron te rishkruash a ridrejtosh.

  • Postime: 85
  • Karma: +0/-0
  • Gjinia: Mashkull

#8 ne: 15-03-2011, 16:54:13
Olti, besoj se struktura eshte permendur me lart. Dmth une kete kuptoj me strukture, me thuaj nqs eshte tjeter:

www.lajme.com/rubrika/artikulli

psh:
www.lajme.com/auto/ (JO www.lajme.com/auto)
www.lajme.com/auto/toyota (JO www.lajme.com/auto/toyota/)
www.lajme.com/auto/bmw

www.lajme.com/sport/
www.lajme.com/sport/golf
...

Mbas rubrikes (ose si me pare category) duhet gjithmone shenja "/"
Mbas artikullit (page), kur dikush shenon shenjen "/" ose eshte bere crawl nga robotet e kerkimit, duhet  redirect ne strukturen e linkut ku shenja "/" fshihet.

Sipas meje struktura kjo eshte (dhe deshiroj te jete):
www.lajme.com/rubrika/ (me "/")
www.lajme.com/rubrika/artikulli (pa "/")

Ndoshta e keqkuptoj une, por nuk di si ta shpregoj ndryshe strukturen e linqeve.

  • Postime: 168
  • Karma: +0/-0
  • Gjinia: Mashkull

#9 ne: 15-03-2011, 18:21:08
Provo kete, duhet ta anashkaloj index.php, apo cfardo tjeter qe egziston ne host. D.m.th cdo file, direktori, dhe link (jo links ne html, por links/shortcuts ne OS).

Kodi: [Zgjidh]
<IfModule mod_rewrite.c>
Options +FollowSymlinks
RewriteEngine on
RewriteBase /

# kjo i heq fraksionin page
# Psh /category/page/ behet /category/page
RewriteRule ^(.*)/(.*)/ http://www\.shembull\.com/$1/$2 [R=301,L]

# kjo i shton fraksionin kategoris kur kategoria eshte pa te
# Psh /category behet /category/
# VETEM nqs ajo qe kerkohet NUK eshte file, direktori, apo link aktual ne host
RewriteCond %{REQUEST_FILENAME} !-s
RewriteCond %{REQUEST_FILENAME} !-l
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !/$
RewriteCond %{REQUEST_URI} !/.*/.*$
RewriteRule ^(.*) http://www\.shembull\.com/$1/ [R=301,L]
</IfModule>

N.q.s nuk funksionon me thuaj. Edhe do ishte mire te postoje se cfar permban .htaccess aktual (nqs ka dicka), si dhe faqen live qe te te jap nje pergjigje me te sakte, ashtu si te thash edhe me siper.

E gezofsh zgjidhjen!  ;)

  • Postime: 28589
  • Karma: +48/-5
  • Gjinia: Mashkull

#10 ne: 16-03-2011, 00:22:55
Aldo, provo kete qe te dha Shefi mesiper dhe uroj te te funksionoje. Por sic thashe perpara ti duhet te japesh nje here strukturen konkrete te url-ve (hiq www.domain.tld nese nuk deshiron te tregosh faqen) sepse cfare jep ti deri tani jane shembuj dhe me shembuj nuk po zgjidhim dot gje.

  • Postime: 85
  • Karma: +0/-0
  • Gjinia: Mashkull

#11 ne: 16-03-2011, 12:42:51
Shefqet, nuk munda ta gezoj zgjidhjen se nuk funksionon akoma... :)

Ky eshte .htaccess aktual:
Kodi: [Zgjidh]
#DirectoryIndex index.php index.html
#Options +FollowSymLinks
#Options -Indexes
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_HOST} ^shembull\.com
RewriteRule ^(.*)$ http://www.shembull.com/$1 [R=permanent,L]
#RewriteBase /relative/web/path/
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^(.+) - [PT,L]
RewriteCond %{REQUEST_URI} !=/images/32.ico
RewriteRule ^(.*) index.php
RewriteCond %{HTTP:Authorization}  !^$
RewriteRule .* - [E=REMOTE_USER:%{HTTP:Authorization}]
</IfModule>
#php_value register_globals 0
Redirect 301 /privacybeleid.php http://www.shembull.com/privacybeleid/

Olti, besoj se shebujt jane te qarte mjaftueshem dhe vetem emerimi ndryshon. Nejse, dicka konkrete nga siti pa www.domain.tld jane:

/privacybeleid/
/vlekken/verwijderen

  • Postime: 28589
  • Karma: +48/-5
  • Gjinia: Mashkull

#12 ne: 16-03-2011, 13:14:30
Shiko nje here kete zgjidhjen per te hequr index.php

Kodi: [Zgjidh]
# Redirect /index.php --> /
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /.*index\.php\ HTTP/
RewriteRule ^(.*)index\.php$ http://www.domain.com/$1 [R=301,L]
# RewriteCond %{THE_REQUEST} \ /(.+/)?index\.php(\?.*)?\  [NC]
# RewriteRule ^(.+/)?index\.php$ http://www.domain.com/%1 [NC,R=301,L]

  • Postime: 168
  • Karma: +0/-0
  • Gjinia: Mashkull

#13 ne: 16-03-2011, 14:01:02
Ky rresht ben qe cdo kerkes pervec /images/32.ico te kaloj ne index.php
Kodi: [Zgjidh]
RewriteRule ^(.*) index.php

Pse duhet ta kalosh cdo request ne server nepermjet index.php? Cfar kerkon te besh me ate rresht?

  • Postime: 85
  • Karma: +0/-0
  • Gjinia: Mashkull

#14 ne: 16-03-2011, 16:03:17
Olti, provova kodin tend por index.php ekziston akoma. Dmth nuk ben redirect. :(

Shefqet, siti sa eshte marre nga une ne pronsi, dhe ne kete gjendje e gjeta .htaccess. Me perpara ka qene dhe nje forum, por tani jo me, ndoshta ka lidhje me te por mund te eleminohet nqs eshte e nevojshme.

  • Postime: 168
  • Karma: +0/-0
  • Gjinia: Mashkull

#15 ne: 16-03-2011, 23:04:46
Si fillim, ky kodi qe ke postuar ti Aldo eshte per TextPattern, edhe eshte mandator ai rreshti aty qe gjithcka te shkoje nepermjet index.

Bazuar ne strukturen origjinale te TextPattern, provo njehere kete:
Kodi: [Zgjidh]
<IfModule mod_rewrite.c>
Options +FollowSymlinks
RewriteEngine on
RewriteBase /

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

# /category/123/article-title/ -> /category/123/article-title
RewriteRule ^(.*)/(.*)/(.*)/ http://www\.domain\.com/$1/$2/$3 [R=301,L]

# /category -> /category/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !/$
RewriteCond %{REQUEST_URI} !/.*/.*$
RewriteRule ^(.*) http://www\.domain\.com/$1/ [R=301,L]

### TEXTPATTERN Start ###
#RewriteBase /relative/web/path/
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^(.+) - [PT,L]

# force everything to go through index
RewriteCond %{REQUEST_URI} !=/images/32.ico
RewriteRule ^(.*) index.php

# PHP as CGI Authorization Vars
RewriteCond %{HTTP:Authorization}  !^$
RewriteRule .* - [E=REMOTE_USER:%{HTTP:Authorization}]
### TEXTPATTERN End ###
</IfModule>

Nqs nuk funksionon postoje ketu, ose me dergo me PM, faqen live te shohe strukturen aktuale qe ke perzgjedhur. :)

  • Postime: 85
  • Karma: +0/-0
  • Gjinia: Mashkull

#16 ne: 18-03-2011, 11:28:24
Shefqet, flm per kodin!

/category -> /category/ eshte OK!

Permanent link modus ne textpattern eshte "/section/title"
Dhe "123" eshte "id" ne kodin tend besoj (/section/id/title)? Kkjo mund te anashkalohet meqenese "id" nuk eshte ne strukturen en linkut.

Po te vij kjo ne rregull, eshte 100% ok! ;-)

  • Postime: 168
  • Karma: +0/-0
  • Gjinia: Mashkull

#17 ne: 18-03-2011, 13:31:16
Nuk kam kohe tani ta testoj, por kjo duhet te funksionoj...
Kodi: [Zgjidh]
<IfModule mod_rewrite.c>
Options +FollowSymlinks
RewriteEngine on
RewriteBase /

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

# /category/article-title/ -> /category/article-title
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/(.*)/ http://www\.domain\.com/$1/$2 [R=301,L]

# /category -> /category/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !/$
RewriteCond %{REQUEST_URI} !/.*/.*$
RewriteRule ^(.*) http://www\.domain\.com/$1/ [R=301,L]

### TEXTPATTERN Start ###
#RewriteBase /relative/web/path/
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^(.+) - [PT,L]

# force everything to go through index
RewriteCond %{REQUEST_URI} !=/images/32.ico
RewriteRule ^(.*) index.php

# PHP as CGI Authorization Vars
RewriteCond %{HTTP:Authorization}  !^$
RewriteRule .* - [E=REMOTE_USER:%{HTTP:Authorization}]
### TEXTPATTERN End ###
</IfModule>

Tani qe e gjete zgjidhjen, shko festo ne yachtin tend, me femna e shampanje! :P

  • Postime: 85
  • Karma: +0/-0
  • Gjinia: Mashkull

#18 ne: 19-03-2011, 11:22:58
TOP! Shume flm Shefqet!

Yachti nderkohe po ankorohet..  :P

Temat e fundit