Skocz do zawartości
Netteria.NET

problem z slash na końcu adresu url i htaccess

Rekomendowane odpowiedzi

Witam

Mam taki problem. Zainstalowałem sobie do testów na serwerze NAS prestashop 1.7.3. Jest to dziewicza instalka zatem nic tam namieszane na pewno nie jest. Domyślnie adres url do marek jest sklep/brand a ja chcę zrobić aby wczytywało marki też dla adresu sklep/brand/ Zacząłem kombinować wymuszenie w .htaccess ale ciągle nie było żadnego efektu (oczywiście czyściłem pamięć podręczną). W końcu zastanowiłem się czy aby na pewno w tym pliku grzebię co trzeba (oczywiście grzebałem w .htaccess w głównym katalogu) i na próbę wszystko z niego wywaliłem. I z zdziwieniem stwierdziłem że sklep sobie dalej działa jak działał (a chyba nie powinien bez tego pliku). 

Co może być powodem? I jak wymusić ten ukośnik na końcu?

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Dzięki za odpowiedź.

Ale to nie rozumiem trochę. Nie mogę wymusić w htaccess aby działał link z ukośnikiem na końcu? W sumie to chodzi tylko o prostą rzecz aby działał adres w formacie adres_sklepu/barnd/ bo teraz daje mi 404 a oczywiście adres_sklepu/brand działa bez problemu. I w sumie chcę doprowadzić do sytuacji odwrotnej. Ale jakoś zmiany w htaccess kompletnie nie przynoszą rezultatu.

jeszcze raz dzięki za pomoc

pozdrawiam

Sławek

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Zmieniłem w klasie Dispatcher w metodzie loadRoutes url_rewrite na brands/ i działa. Ale mam wrażenie, że to nie jest najbardziej eleganckie rozwiązanie.
Oczywiście nadpiszę tą klasę żeby nie było problemów przy aktualizacji presty.

Ale moze ktoś zna lepsze rozwiązanie?

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach
W dniu 11.03.2018 o 22:39, Netteria.NET napisał:

 

Ale moze ktoś zna lepsze rozwiązanie?

Czyli jakie?

W htaccess tego nie zrobisz

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Tak, w htaccess to faktycznie nie ma co specjalnie kombinować. Czyli dobrze wykombinowałem?:)  Czasem po prostu mam wrażenie że potraktuję coś zbyt topornie ale może faktycznie przesadzam. W końcu w tym miejscu mam zmienną która mnie informuje że jest to do producentów więc problemu z identyfikacją nie ma w warunku i tylko tam doda ukośnik. Oczywiście wszystko w override.

 

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się



  • Podobna zawartość

    • Przez srodek_86
      Witam
      Mam preste 1,5 postawiona na hostingu hostingera i po uruchomieniu przyjaznych linkow pojawia sie Internal server error. Jeżeli usunę wygenerowany plik .htaccess to presta chodzi.... Jak wgram plik .htaccess z takimi parametrami jak ponize:
       
      # URL rewriting module activation
      RewriteEngine on

      # URL rewriting rules
      RewriteRule ^([a-z0-9]+)\-([a-z0-9]+)(\-[_a-zA-Z0-9-]*)/([_a-zA-Z0-9-]*)\.jpg$ /img/p/$1-$2$3.jpg [QSA,L,E]
      RewriteRule ^([0-9]+)\-([0-9]+)/([_a-zA-Z0-9-]*)\.jpg$ /img/p/$1-$2.jpg [QSA,L,E]
      RewriteRule ^([0-9]+)(\-[_a-zA-Z0-9-]*)/([_a-zA-Z0-9-]*)\.jpg$ /img/c/$1$2.jpg [QSA,L,E]
      RewriteRule ^lang-([a-z]{2})/([a-zA-Z0-9-]*)/([0-9]+)\-([a-zA-Z0-9-]*)\.html(.*)$ /product.php?id_product=$3&isolang;=$1$5 [QSA,L,E]
      RewriteRule ^lang-([a-z]{2})/([0-9]+)\-([a-zA-Z0-9-]*)\.html(.*)$ /product.php?id_product=$2&isolang;=$1$4 [QSA,L,E]
      RewriteRule ^lang-([a-z]{2})/([0-9]+)\-([a-zA-Z0-9-]*)(.*)$ /category.php?id_category=$2&isolang;=$1 [QSA,L,E]
      RewriteRule ^([a-zA-Z0-9-]*)/([0-9]+)\-([a-zA-Z0-9-]*)\.html(.*)$ /product.php?id_product=$2$4 [QSA,L,E]
      RewriteRule ^([0-9]+)\-([a-zA-Z0-9-]*)\.html(.*)$ /product.php?id_product=$1$3 [QSA,L,E]
      RewriteRule ^([0-9]+)\-([a-zA-Z0-9-]*)(.*)$ /category.php?id_category=$1 [QSA,L,E]
      RewriteRule ^content/([0-9]+)\-([a-zA-Z0-9-]*)(.*)$ /cms.php?id_cms=$1 [QSA,L,E]
      RewriteRule ^([0-9]+)__([a-zA-Z0-9-]*)(.*)$ /supplier.php?id_supplier=$1$3 [QSA,L,E]
      RewriteRule ^([0-9]+)_([a-zA-Z0-9-]*)(.*)$ /manufacturer.php?id_manufacturer=$1$3 [QSA,L,E]
      RewriteRule ^lang-([a-z]{2})/(.*)$ /$2?isolang=$1 [QSA,L,E]
       
      to również chodzi.
      A wygenerowanym plikiem który wyglada tak, nie chodzi:
       
      # ~~start~~ Do not remove this comment, Prestashop will keep automatically the code outside this comment when .htaccess will be generated again
      # .htaccess automaticaly generated by PrestaShop e-commerce open-source solution
      # http://www.prestashop.com - http://www.prestashop.com/forums

      <IfModule mod_rewrite.c>
      <IfModule mod_security.c>
      SecFilterEngine Off
      SecFilterScanPOST Off
      </IfModule>RewriteEngine on
      RewriteCond %{HTTP_HOST} ^www.obrazdlaciebie.esy.es$
      RewriteRule . - [E=REWRITEBASE:/]
      RewriteRule ^api/?(.*)$ %{ENV:REWRITEBASE}webservice/dispatcher.php?url=$1 [QSA,L]

      # Images
      RewriteCond %{HTTP_HOST} ^www.obrazdlaciebie.esy.es$
      RewriteRule ^([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1/$1$2$3.jpg [QSA,L,E]
      RewriteCond %{HTTP_HOST} ^www.obrazdlaciebie.esy.es$
      RewriteRule ^([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$1$2$3$4.jpg [QSA,L,E]
      RewriteCond %{HTTP_HOST} ^www.obrazdlaciebie.esy.es$
      RewriteRule ^([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$3/$1$2$3$4$5.jpg [QSA,L,E]
      RewriteCond %{HTTP_HOST} ^www.obrazdlaciebie.esy.es$
      RewriteRule ^([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$3/$4/$1$2$3$4$5$6.jpg [QSA,L,E]
      RewriteCond %{HTTP_HOST} ^www.obrazdlaciebie.esy.es$
      RewriteRule ^([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$3/$4/$5/$1$2$3$4$5$6$7.jpg [QSA,L,E]
      RewriteCond %{HTTP_HOST} ^www.obrazdlaciebie.esy.es$
      RewriteRule ^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$3/$4/$5/$6/$1$2$3$4$5$6$7$8.jpg [QSA,L,E]
      RewriteCond %{HTTP_HOST} ^www.obrazdlaciebie.esy.es$
      RewriteRule ^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$3/$4/$5/$6/$7/$1$2$3$4$5$6$7$8$9.jpg [QSA,L,E]
      RewriteCond %{HTTP_HOST} ^www.obrazdlaciebie.esy.es$
      RewriteRule ^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$3/$4/$5/$6/$7/$8/$1$2$3$4$5$6$7$8$9$10.jpg [QSA,L,E]
      RewriteCond %{HTTP_HOST} ^www.obrazdlaciebie.esy.es$
      RewriteRule ^c/([0-9]+)(\-[\.*_a-zA-Z0-9-]*)(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/c/$1$2$3.jpg [QSA,L,E]
      RewriteCond %{HTTP_HOST} ^www.obrazdlaciebie.esy.es$
      RewriteRule ^c/([a-zA-Z_-]+)(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/c/$1$2.jpg [QSA,L,E]
      # AlphaImageLoader for IE and fancybox
      RewriteCond %{HTTP_HOST} ^www.obrazdlaciebie.esy.es$
      RewriteRule ^images_ie/?([^/]+)\.(jpe?g|png|gif)$ js/jquery/plugins/fancybox/images/$1.$2 [QSA,L,E]

      # Dispatcher
      RewriteCond %{REQUEST_FILENAME} -s [OR]
      RewriteCond %{REQUEST_FILENAME} -l [OR]
      RewriteCond %{REQUEST_FILENAME} -d
      RewriteCond %{HTTP_HOST} ^www.obrazdlaciebie.esy.es$
      RewriteRule ^.*$ - [NC,L]
      RewriteCond %{HTTP_HOST} ^www.obrazdlaciebie.esy.es$
      RewriteRule ^.*$ %{ENV:REWRITEBASE}index.php [NC,L]
      </IfModule>

      #If rewrite mod isn't enabled
      ErrorDocument 404 /index.php?controller=404

      # ~~end~~ Do not remove this comment, Prestashop will keep automatically the code outside this comment when .htaccess will be generated again
       
      Co należy zmienic zeby przyjazne linki chodziły?
       
      Dodam że w przypadku hostingera znaczenie maja małe i duże litery. Sklep został przeniesiony z hostingu 1 and 1, na tamtym hostingu wielkość znaków nie miała znaczenia
  • Przeglądający

    Brak zarejestrowanych użytkowników, przeglądających tę stronę.

  • Aktywni użytkownicy

    Nikt jeszcze nie otrzymał reputacji w tym tygodniu.

  • Statystyki forum

    • Tematów
      7616
    • Postów
      36705
×