Skocz do zawartości

.htaccess dużo wpisów - wydajność


beha

Rekomendowane odpowiedzi

Mam takie pytanie do znawców tematu, czy gdy do .htaccess wpiszę około

25 000 wpisów typu jak to poniżej czy to znacznie obciąży serwer ?

RewriteRule ^Informatyczne.html$ index.php?k=5254 [L]

Spodziewana liczba odsłon stron na witrynie to około 5000 dziennie.

Czy jest wielka róznica gdy tych wpisów jest 100 a 25000, chodzi mi głownie o to aby mój ISP nie wyłączył mi konta :-).

...

Odnośnik do komentarza
Udostępnij na innych stronach

Mnie sie wydaje, że każdy "dział" będzie miał swój odpowiednik.

Niby jest różnica w wydajności, bo plik .htaccess jest czytany przy każdym żądaniu! (a więc podczas otwierania jednej storny - nawet kilka razy). Logika jednak wykazuje, że plik ten w większości przypadków siedzi cały w pamięci, co pod tym względem nie będzie miało wpływu na wydajność. Pozostaje więc już tylko liniowa charakterystyka ilości porównań jakie muszą być przeprowadzone. Jeśli się nie mylę, to jest porównywane zapytanie aż do odnalezienia pierwszego ciągu odpowiadajacego - a więc najlepiej umieszczać najczęstsze odwołania na początku.

Odnośnik do komentarza
Udostępnij na innych stronach

Rozwiąż to sprytnie, a nie siłowo...

rewriterule ([a-zA-Z]*).html redirect.php?id=$1

redirect.php sprawdza w bazie co to jest to co ma w końcówce html i w zależności od potrzeby przenosi/wyświetla odpowiednią stronę.

.htaccess malutki, baza jest szybsza..

pozd.

Odnośnik do komentarza
Udostępnij na innych stronach

No to rób includowanie inteligentne.. a wyszukiwarki? One będą widziały tylko xyz.html...

Tylko wtedy wychodzi że mamy jedną podstronę z podmieniana treścią...

Z tego co przed chwilą czytałem na forach zagranicznych o htaccess to juz pliczek o wielkości kilkudziesięciu KB bardzo spowalnia ładowanie stron, a u mnie wychodzi jakieś 1mb-2mb

A w zasadzie wszystkie wpisy są raczej równorzędne i nie można określić które sa pobierane częściej, aby umieścić je na poczatku.

...

Odnośnik do komentarza
Udostępnij na innych stronach

Podobno można przyspieszyć dając formułki bezpśrednio do httpd.conf wtedy (podobno) jest ładowane tylko raz przy starcie systemu i przechowywane cały czas w pamięci.

ECh.. A wszystko jak zwykle skończy się tym, że zrobię statyczne pliki na podstawie bazy.

...

Odnośnik do komentarza
Udostępnij na innych stronach

Eh ;-)

To co pokazałem, ten redirect.php wcale nie oznacza przekierunkowania. A więc tak.. redirect dostaje jako id wartość pewną. Ta wartość jest pobierana z bazy danych i oznacza np. plik, który m zostać dołączony i wtedy ten plik się dołącza.

Ewentualnie można tak jak pokazał MMP ale właśnie robię jeden projekt i przy kilkudziesiętciu możliwościach id wszystko robi się bardzo nieeleganckie...

Przy tego typu dołączaniu co przedstawiłem nie ma problemu jednej strony z wieloma treściami.. przecież .htaccess nie informuje przeglądarki/robota, że on korzysta z jednego pliku. Tak? Czy może ja sie mylę?.. chyba nie :-)

Ja bym to zrobił tak jak opisałem w poście wcześniej +

function RejestrujID($id, $plik)

{

$this -> IDs[$id] = $plik;

}

I teraz nie robisz nic wielkiego,tylko

include($this -> IDs[$_GET['id']]);

Oczywiście pomijam tutaj sprawdzanie, czy element $_GET['id'] istnieje w tablicy, ale wierzę, że takie coś już sobie zrobisz (bez tego to rozwiązanie spowoduje powstanie błędu.. dość nieciekawego ;p).

pozdr.

Odnośnik do komentarza
Udostępnij na innych stronach

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę. Warunki użytkowania Polityka prywatności