Ehitan veebirakendust ja üritan veebisaidile lisada kahte keelt. Nii et ma teen samad dokumendid, mis lõpevad -gr. Mõned näited failidest näevad välja sellised:

Inglise keele teed:

  • www.example.com/index.html
  • www.example.com/Blog.html

Kreeka keele tee:

  • www.example.com/index-gr.html
  • www.example.com/Blog-gr.html

Kas on võimalik Kreeka faile ümber nimetada järgmiselt:

  • www.example.com/blog-gr.html/

midagi sellist:

  • www.example.com/blog/gr

nt: eemaldage -gr kõigist Kreeka dokumentidest ja lisage /gr lõpus. Samuti ainult indeksfaili jaoks, example.com/index-gr.html peaks olema example.com/gr selle asemel.

Nii et ma küsin .htaccess kood asendada need kreeka faili URL-id, mis lõpevad -gr.html to / gr-ga

Kas kreeka faile on võimalik ümber nimetada järgmiseks näiteks:

www.example.com/blog-gr.html/

tuleks ümber nimetada

www.example.com/blog.html/gr

nt: eemaldage kõigi kreeka dokumentide -gr ja lisage lõppu / gr. Ka ainult indeksfaili puhul peaks example.com/index-gr.html olema example.com/gr

Seal on paar võimalust, kuidas sellega hakkama saada.

Kui teil pole URL-i ümberkirjutamise kogemust, võite luua kaustad, mille nimi on HTML-fail, ja panna keelefailid HTML-laiendusega sellesse.

Näiteks:

Looge dokumendijuuris kaust nimega "blog.html". Looge kausta "blog.html" failid nimega "en.html" ja "gr.html" ning asetage ajaveebi saksa sisu "gr.html" ja sama ajaveebi ingliskeelne sisu ka "en.html". kasutajad pääsevad teie blogi inglise ja saksa versioonidele juurde järgmiste URL-ide kaudu:

http://example.com/blog.html/en.html http://example.com/blog.html/gr.html 

Kuid kui soovite URL-i muuta kasutajasõbralikumaks, peaksite otsima URL-i ümberkirjutamise ja looma URL-id, mis vastavad tegelikule HTML-i sisule serveris. Näiteks saate koostada reegli, mis kaardistab:

http://example.com/blog/en 

faili:

(path-to-document-root)/blogs/en.html 

Isiklikult arvan, et oleks mõttekam, kui juurkaust oleks selle keele nimi. Nii saab sisu serveris kenasti sorteerida.

Võib-olla midagi sellist:

http://example.com/gr/blog.html http://example.com/en/blog.html http://example.com/fr/blog.html 
  • 1 jah, ma tegin seda juba varem, kuid see on aeganõudev, kuna erinevate kaustade jaoks pean kõik teed muutma numbriks ../, nii et lisasin kreeka failid ingliskeelsete dokumentidega samasse kataloogi ja nimetasin need ümber -gr-ks.

.htaccess:

 RewriteEngine on RewriteBase / RewriteRule ^(.*)\/gr$ $1-gr.html [NC,L] 

HTML:

Lisage see pea iga kreeka faili sildid (asendades register-gr.html praeguse failiga):

 

Muutke kreeka failidele linkivad URL-id järgmiseks: filename.html/gr

nt: Greek file

  • Ma pole kindel, mis on selle põhjus base sildi? Kui muudate URL-e, on eelistatav teha need juur-suhtelised, st. /filename.html/gr. Ma arvasin, et sa tahtsid /index-gr.html olla /gr selle asemel (erijuhtum)? Kui teete URL-ide muutmise protsessi, võiksite kaaluda URL-i eemaldamist .html pikendus ka? nt. /filename/gr.
  • @DocRoot saan seda teha ka eemaldades htaccessi failist .html (vasakul). Kas arvate, et parem on .html eemaldada?
  • Eemaldamine .html kindlasti "näeb välja" puhtam.

none: Charles Robertson | none