Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]hostinger.pl i frendly URLs
Forum PHP.pl > Forum > Przedszkole
kamilo818
Nie moge poradzić sobie z ustawieniem w .htaccess ładnych adresów url na hostinger.pl
W pomocy jest wszystko ładnie opisane:
  1. Czy jest włączona obsługa .htacess?
  2.  
  3. Tak, .htaccess jest w pełni obsługiwany.
  4.  
  5. Należy jednak pamiętać, że używamy ścieżek wirtualnego użytkownika do katalogu domowego, a więc pojawią się błędy przy próbie włączenia adresów przyjaznych wyszukiwarkom (engine friendly URLs). Można to naprawić dodając następującą linię do pliku .htaccess:
  6.  
  7. RewriteBase /
  8.  
  9. Należy ją umieścić jako pierwszą w pliku .htaccess.
  10.  
  11. Uwaga: jeśli instaluje się skrypt w podkatalogu, jak np. www.yoursite.com/forum/, należy dodać regułę
  12. RewriteBase /forum/
  13. do pliku .htaccess znajdującego się w folderze public_html/forum/.


wiec wrzuciłam do testowania prostą stronke
index.php
  1. <?php
  2. header('Content-Type: text/html; charset=utf8');
  3. $arrParams = array();
  4. $strDefaultPath = '';
  5. $_SERVER['PATH_INFO'] = isset($_SERVER['PATH_INFO']) ? $_SERVER['PATH_INFO'] : $strDefaultPath;
  6. $arrParams = explode('/', substr($_SERVER['PATH_INFO'], 1));
  7. print_r($arrParams);
  8. ?>
  9. <!DOCTYPE html>
  10. <html lang="pl">
  11. <head>
  12. <title>Index</title>
  13. </head>
  14. <body>
  15. <br> <a href="test1">test1</a>
  16. <br> <a href="test2">test2</a>
  17. </body>
  18. </html>

i plik .htaccess
  1. RewriteBase /
  2. RewriteEngine On
  3. RewriteCond %{REQUEST_FILENAME} !-f
  4. RewriteCond %{REQUEST_FILENAME} !-d
  5. RewriteRule (.*) index.php/$1 [L]


Niestety efekt jest mizerny bo po kliknięciu w link pojawia sie komunikat:
No input file specified.

Efekt tutaj: http://wyniki.waw.pl/

Ktoś podrzuci jakiś pomysł ?
SmokAnalog
A co to jest to?
Kod
RewriteRule (.*)         index.php/$1 [L]


Jeśli chcesz przekierować wszystko na index.php, to możesz to zrobić po prostu tak:
Kod
RewriteRule . index.php [L]


Zapożyczyłem to z WordPressa. Kiedyś przekazywałem plikowi ścieżkę w ten sposób:
Kod
RewriteRule ^(.*)$ index.php?query=$1 [L]


Ale tę wartość można odczytać z $_SERVER['REQUEST_URI']. Jeśli masz stronę w folderze, to dodatkowo przydaje się wtedy odpowiednie ucięcie go porównując z $_SERVER['PHP_SELF'].
kamilo818
Twoje roziązania nie zmnieniają nic.
  1. RewriteRule . index.php [L]

po kliknięciu w link zadna wartos nie jest pobierana do tablicy

  1. RewriteRule ^(.*)$ index.php?query=$1 [L]

Działa dokładnie tak samo jak moje

  1. RewriteRule (.*) index.php/$1 [L]


Ma ktoś jakiś inny pomysł?
nospor
Zobacz co w pelni dostajesz
print_r($_SERVER);
kamilo818
  1. Array ( [PHP_FCGI_CHILDREN] => 0 [PATH] => /sbin:/usr/sbin:/bin:/usr/bin [PWD] => /opt/php [SHLVL] => 0 [PHP_FCGI_MAX_REQUESTS] => 0 [FCGI_ROLE] => RESPONDER [UNIQUE_ID] => U89cP7kcFA8AAHYYI98AAAED [BINARY_DOCROOT] => /home/u414926275/public_html [BINARY_SERVERADMIN] => webmaster@wyniki.waw.pl [HTTP_HOST] => wyniki.waw.pl [HTTP_X_REAL_IP] => 82.214.130.122 [HTTP_CONNECTION] => close [HTTP_CACHE_CONTROL] => max-age=0 [HTTP_ACCEPT] => text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8 [HTTP_USER_AGENT] => Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.125 Safari/537.36 [HTTP_ACCEPT_LANGUAGE] => pl-PL,pl;q=0.8,en-US;q=0.6,en;q=0.4 [SERVER_SIGNATURE] => [SERVER_SOFTWARE] => Apache [SERVER_NAME] => wyniki.waw.pl [SERVER_ADDR] => 31.220.16.101 [SERVER_PORT] => 80 [REMOTE_ADDR] => 82.214.130.122 [DOCUMENT_ROOT] => /home/u414926275/public_html [SERVER_ADMIN] => webmaster@wyniki.waw.pl [SCRIPT_FILENAME] => /home/u414926275/public_html/index.php [REMOTE_PORT] => 45219 [GATEWAY_INTERFACE] => CGI/1.1 [SERVER_PROTOCOL] => HTTP/1.1 [REQUEST_METHOD] => GET [QUERY_STRING] => [REQUEST_URI] => / [SCRIPT_NAME] => /index.php [PHP_SELF] => /index.php [REQUEST_TIME] => 1406098495 [PATH_INFO] => )
nospor
To wyglada tak, jakby jednak .htaccess nie byl obslugiwany. Jestes pewna ze stworzylas plik o poprawnej nazwie .htaccess?
kamilo818
na 100%
  1. .htaccess
SmokAnalog
Cytat(nospor @ 23.07.2014, 09:09:42 ) *
Jestes pewna ze stworzylas plik o poprawnej nazwie .htaccess?

To chłop biggrin.gif
nospor
A od kiedy chlop pisze po babsku?
Cytat
wiec wrzuciłam do testowania prostą stronke

kamilo818
"wiec wrzuciłam do testowania prostą stronke"

Moja literówa! Jestem "chłop".

Wracając do tematu. Jakieś inne pomysły?
fate
Pokazałeś cały htaccess?
Nie masz na poczatku entera?
Mam jakies skojarzenia z zakamarków pamieci sprobuj moze zamienić miejscami na:
RewriteEngine On
RewriteBase /
kamilo818
Tak cały plik.
Zmiana miejscami nic nie dała.
Enterów na poczatku nie ma.
fate
.htaccess siedzi w:
/public_html/
?
kamilo818
Tak.
amii
Weź wpisz w .htaccess bleblevlel
i zobacz czy Ci wyrzuci błąd Internal Server Error 500, jeśli tak to jest obsługiwany jeśli nie to nie jest
kamilo818
Wyrzuciło Internal Server Error. Czyli jest obsługiwany. Tylko czemu nie działa :?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.