Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> problem z mod_rewrite
Ozzy
post
Post #1





Grupa: Zarejestrowani
Postów: 204
Pomógł: 0
Dołączył: 26.12.2003
Skąd: Rzeszów

Ostrzeżenie: (0%)
-----


Zastosowałem się do instrukcji na http://php.faq.pl/docs/rewrite.php , jednak kod, który jest tam napisany nie działa tak jak powinien (Windows).

Kod
RewriteRule ^/(files|images)/(.*)$ /monstrum/php/$1/$2 [l]

RewriteRule !^/(files|images)/.*$ /monstrum/php/index.php [l]


powoduje Internal Server Error

gdy zmienię na:

Kod
RewriteBase /monstrum/php/

RewriteRule ^(files|images)/(.*)$ $1/$2 [l]

RewriteRule !^(files|images)/.*$ index.php [l]


wydaje się działać, jednak tylko dla adresów takich jak: /monstrum/php/test i monstrum/php/test_123.
Nie działa natomiast w przypadku gdy dodam jeszcze jeden znak /, czyli: /monstrum/php/test/ lub /monstrum/php/test/123

strona otwiera się, jednak bez plików z folderów files i images

Pomocy:)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
MaKARON
post
Post #2





Grupa: Zarejestrowani
Postów: 114
Pomógł: 1
Dołączył: 17.07.2003

Ostrzeżenie: (0%)
-----


RewriteEngine on

# zostaw w spokoju obrazki!
#RewriteCond !/var/www/html/dyplom/www/%{REQUEST_FILENAME} -f
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^.*/.*$ /index.php

Przeskoczylem z innego tematu. Ja uzywam takiego motywu... nie pamietam jak powstal, ale straaaaasznie sie meczylem i wykorzystuje cos takiego (zauwaz, ze wczesniej probowalem innego rozwiazania). Idea jest taka - nie wiem czy to pasuje do tematu, bo jestem zbyt zajety zeby sie zastanawiac (j2me na warsztacie dzisiaj). Chodzi o to, ze jezeli nie ma pliku, to jest przekierowywane do /index.php a tam juz sobie sprawdzam jaki adres byl wpisany.


Tutaj jest moja obsluga /krotko opisze/:

/** na podstawie adresu zwraca argv[] i argc */
function getParams()
{
global $argv, $argc; // tak sobie wymyslilem zeby sie z C kojarzylo

$module = explode("/",$_SERVER['REQUEST_URI']); // rozdzielamy

$argv = array();
$argc = 0;

// usuwanie pustych
foreach($module as $k => $v)
if (strlen($v) != 0) {
if (strchr($v,"?"))
$argv[] = substr($v,0,strrpos($v,"?"));
else
$argv[] = $v;
$argc++;
}
// teraz w /index.php
// whichModules(); // i tutaj mam zaimplementowane wywolanie modlulu
}
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 26.12.2025 - 02:41