WordPress. Bezpośrednie odnośniki i index.php w adresie.

Podczas wdrażania najpopularniejszego systemu blogowego – WordPress’a, kolejny już raz natknąłem się na ten sam problem. Chodzi o odnośniki bezpośrednie i index.php w adresie.

Wygląda to tak:

Problem ten pojawia się wtedy, gdy skrypt nie może automatycznie wykryć serwera HTTP na jakim został zainstalowany. Można to w prosty sposób naprawić.

Odnajdujemy plik:

wp-includes\vars.php

W pliku odnajdujemy linię, w zależności od wersji Wordress’a

$is_apache = strstr($_SERVER['SERVER_SOFTWARE'], 'Apache') ? 1 : 0;

lub

$is_apache = (strpos($_SERVER['SERVER_SOFTWARE'], 'Apache') !== false || strpos($_SERVER['SERVER_SOFTWARE'], 'LiteSpeed') !== false);

i komentujemy ją (używając oczywiście znaków //). Pod wykomentowaną linią dodajemy nową. Będzie to odpowiednio:

$is_apache = 1;

lub

$is_apache = true;

Zapisujemy i kopiujemy plik na serwer.
Po modyfikacjach będzie to wyglądało następująco:

//$is_apache = strstr($_SERVER['SERVER_SOFTWARE'], 'Apache') ? 1 : 0;
$is_apache = 1;

lub

//$is_apache = (strpos($_SERVER['SERVER_SOFTWARE'], 'Apache') !== false || strpos($_SERVER['SERVER_SOFTWARE'], 'LiteSpeed') !== false);
$is_apache = true;

Po tej zmianie WordPress powinien automatycznie utworzyć plik .htaccess, a ekran wyboru odnośników bezpośrednich wyglądać następująco:

6 komentarzy

  1. Nie zbyt rozumiem i nie wiem czy to w ogóle mi pomoże ;/, bo ja chciałem sprawdzić co się stanie jak zmienie na własny format wspisując:
    http://ungoro/blog
    i jak to zaakceptowałem to już na strone i wordpresa nie moge wejść, przez xampp jak wchodze do phpmyadmin to już nie moge tam wchodzić gdyż już mam założonego bloga jakby i to nie przeszkadzało, że tam nie mogłem wejść i to że zmieniłem to co Pan pokazuje na obazku własny format, to nie moge już wejść do niczego ;/. Jest na to rozwiązanie?

    Nad stroną dużo się męczyłem.

  2. W phpmyAdmin informatycy pomogli mi ze stroną, już jest dobrze, ale nie będę jej opublikował.

  3. Przed zastosowaniem powyższej opcji, sprawdzcie najpierw czy posiadacie zainstalowany moduł php mod_rewrite. W tym celu należy przekopiować na serwer plik info.php o następującej streści:

    Jeśli po twarciu w wyszukiwarce nei znajdziecie mod_rewrite (ctrl+f), oznacza że z powyższego przykładu nie skorzystacie i pozostaje Wam jedynie sztuczne przepisywanie z index.php w nazwie.

  4. u mnie nie działa
    mam problem z Wampserver.
    Na początku strony nie otwierały się, włączyłem mod rewrite. Teraz na każdej otwiera się strona startowa localhost Wampservera

    Co zrobić?

  5. Warning: preg_match() [function.preg-match]: Compilation failed: nothing to repeat at offset 1 in /var/www/virtual/virusiq.cba.pl/wp-includes/class-wp.php on line 201

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *