Niby prosty temat ale nie mogę sobie z tym poradzić.
Potrzebuję zrobić stronę (oczywiście z przyjaznymi adresami) o następującej strukturze:
1. moja-domena.pl
2. moja-domena.pl/wykaz-rzeczy
3. moja-domena.pl/wykaz-rzeczy/rzecz-1
W folderze moja-domena.pl umieściłem index.html oraz wykaz-rzeczy.html
Przy pomocy .htaccess załatwiłem sprawę przekierowań z www na bez www oraz pozbyłem się końcówek html.
Utworzyłem folder wykaz-rzeczy a w nim rzecz-1.html. I zaczął się problem. Strona wykaz-rzeczy wpisana bez html nie odpowiada chyba dlatego, że znajduje folder o takiej samej nazwie. Jak zbudować taką strukturę? Czy .htaccess może jakoś w tym pomóc i/lub przeszkodzić?
Proszę o pomoc.
Napisano 22 lutego 2016 - 15:57
Napisano 22 lutego 2016 - 23:29
W katalogu umieszczaj plik o domyślnej nazwie index.html, jaki chcesz aby został wywołany wpisując wyłącznie url katalogu.
To jest rozwiązanie najprostsze z możliwych.
Rzecz w tym, że musisz pojąć na jakich zasadach działa webserwer.
Jeśli istnieje katalog, jest on najpierw sprawdzany, a dopiero potem są stosowane reguły przepisywania.
Domyślnie zatem do URL katalogu dodawany jest końcowy slash i wywoływana jest domyślna zawartość katalogu (albo reguły w htaccess, albo od razu domyślny dokument).
O ile pamiętam, poniższa dyrektywa rozwiązuje problem, choć jednocześnie wywołuje inne. Wstaw na początku htaccessa i działaj dalej.
DirectorySlash Off
Napisano 23 lutego 2016 - 08:57
Dokładnie jak Zimistrz pisze, niech struktura twoich plików wygląda mniej więcej w ten sposób:
- index.html
- wykaz-rzeczy/
-- wykaz-rzeczy/index.html
-- wykaz-rzeczy/rzecz-1.html
- wykaz-innych-rzeczy/
Swoją drogą czy nie lepiej zastosować tutaj pehape? i mieć główny index.php który sprawdza urli i na jego podstawie includuje odpowiednie pliki, w którym masz jeden wspólny head i cały layout strony, zamiast osobnych całych plików html? Jeżeli przyjdzie Ci zmienić jedną literkę np meta title, to będziesz musiał teraz edytować wszystkie pliki, a dzięki pehape tylko jeden
webDeveloper
Napisano 23 lutego 2016 - 20:03
Dzięki za wskazówki.
Próbowałem wcześnie umieścić index.html w podkatalogu i otrzymuję błąd:
You don't have permission to access /wykaz-rzeczy/.html on this server. Additionally, a 403 Forbidden error was encountered while trying to use an ErrorDocument to handle the request.
Nie mogę się odwołać moja-domena.pl/wykaz-rzeczy tylko muszę napisać moja-domena.pl/wykaz-rzeczy.html a tak nie chcę.
Dyrektywa DirectorySlash Off też nie działa.
Może mam złe dyrektywy usuwające końcówki html:
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^\.]+)$ $1.html [NC,L]
Proszę o pomoc.
Zapomniałem napisać, że mogę też odwołać się do tego pliku tak: moja-domena.pl/wykaz-rzeczy/index lub moja-domena.pl/wykaz-rzeczy/index.html.
Ja chcę aby działał adres najprostszy, czy: moja-domena.pl/wykaz-rzeczy.
Chyba coś jest nie tak z htaccess.
Napisano 24 lutego 2016 - 00:13
You don't have permission to access /wykaz-rzeczy/.html on this server
Bacz dokładnie jakie URI wywołujesz, pogrubiłem je w cytacie.
Sprawa jest wbrew pozorom skomplikowana, choć to co chcesz osiągnąć wydaje się z pozoru logicznie, proste i zrozumiałe.
Tak jak Unbreak, sugerowałbym również użycie jakiegoś języka skryptowego, co przyszło mi na myśl już na samym początku.
Dzięki temu unikniesz problemów jakie pojawią się po tym, jak pokonasz to, z czym aktualnie walczysz.
Co więcej, zrób krok dalej zakładając że rozwiązałeś aktualny problem i zastanów się nad czym będziesz pracował dalej.
Jestem pewien że rozwiązanie obecnej sprawy na nic się nie przyda, bo porzucisz je ze względu na obostrzenia i to, że zmienisz całkowicie podejście.
Wracając do php - czy w czymkolwiek byś to robił - możesz bez problemu ładować dokument o takiej samej nazwie jak katalog, wywołując jedynie URL katalogu.
Samymi regułami mod_rewrite tego nie zrobisz.
I tutaj rzecz ostatnia, która polega na tym, że reguły jak najbardziej działają.
Ale! Czyść cache przeglądarki lub restartuj ją jeśli zmieniasz reguły przepisywania, bowiem te są zapamiętywane.
Sprzeczność reguł również może mieć miejsce, bo wywołujesz plik z końcówką html, którego dotyczy reguła przepisywania usuwająca rozszerzenie.
Co z kolei doprowadza do tego że wywołujesz plik o takiej samej nazwie jak katalog, a tu już może działać reguła usuwająca tzw. trailing slash.
I w konsekwencji nie dostajesz nic.
Wyłącz najpierw usuwanie rozszerzenia i sprawdź jak zachowuje się dyrektywa usuwająca końcowy slash przy wywołaniu w katalogu.
Umieszczenie domyślnego dokumentu również pomoże zrozumieć to i owo.
Napisano 03 marca 2016 - 16:58
Nie mogłem sobie z tym poradzić, więc ostatecznie zdecydowałem się zmienić strukturę na:
- index.html
- wykaz-rzeczy.html
-- rzecz/rzecz-1.html
-- rzecz/rzecz-2.html
Tak czy inaczej jeszcze raz dzięki za pomoc.
Napisano 04 marca 2016 - 10:23
Widzę że bronisz się rękami i nogami by nie wykorzystać do tego php.
webDeveloper
Napisano 17 marca 2016 - 17:32
Po prostu nie znam PHP. Za to dość dobrze znam CSS i HTML i do tego trochę JS. Myślę, że w ten sposób można zrobić ładną i sprawną stronę.
Nie chciałem też komplikować strony ani korzystać z CMS'ów typu Joomla, WP, itp.
Pracę już skończyłem, więc jeśli chcecie ocenić efekt (RadoslawKwiatkowski.pl) to będę wdzięczny za uwagi, również te krytyczne.
Napisano 17 marca 2016 - 23:00
Po prostu nie znam PHP. Za to dość dobrze znam CSS i HTML i do tego trochę JS. Myślę, że w ten sposób można zrobić ładną i sprawną stronę.
Nie chciałem też komplikować strony ani korzystać z CMS'ów typu Joomla, WP, itp.
Pracę już skończyłem, więc jeśli chcecie ocenić efekt (RadoslawKwiatkowski.pl) to będę wdzięczny za uwagi, również te krytyczne.
Prośba do Ciebie o nie mieszanie wątków i założenie tematu w dziale stron do oceny: http://web-talk.pl/f...trony-do-oceny/
Z góry dzięki!
Podone tematy
Temat | Forum | Autor | Podsumowanie | Ostatni post | |
---|---|---|---|---|---|
Jaki koszt pozycjonowania sklepu internetowego |
Promocja i marketing | x_n |
|
||
Jak zacząć tworzyć ładne layouty? |
Ogólne | Quaniq |
|
|
|
Siłownia - jakie suplementy i odżywki na począteksiłownia, dieta i 1 więcej |
Po godzinach | zonic |
|
|
|
Jaki system do prowadzenia magazynu w sklepie internetowym |
Software | x_n |
|
||
Jak usunąć konto z forum ? |
Propozycje, sugestie, błędy | pakujsie |
|
|
Również z jednym lub większą ilością słów kluczowych: htaccess
Technologie webowe - tworzenie stron www →
PHP →
.htaccess co oznacza [NC], [L] itd?Napisany przez studenciak, 01 cze 2015 htaccess, 301, przekierowanie i 2 więcej |
|
|||
Rozwiązany
Technologie webowe - tworzenie stron www →
Gotowe rozwiązania →
Przyjazne linki w .htaccessNapisany przez JJay, 25 lut 2015 htaccess |
|
|||
Domeny i hosting →
Hosting →
[MyDevil.Net] Obsługa certyfikatów przez SNINapisany przez MyDevil.Net, 18 sie 2014 nodejs, ror, django, passenger i 6 więcej |
|
Użytkownicy przeglądający ten temat: 0
0 użytkowników, 0 gości, 0 anonimowych