Od 2 dni bawię się w poprawne ustawienie u siebie na Apachu2 mod-rewrite bym mógł w tworzonych przez siebie stronkach używać przejrzystych odnośników. Niestety bezskutecznie. Mam Debian to Etch, Apache jest z repo. Uruchomiłem (tak mi się zdaje) mod-rewrite poleceniem:
Kod: Zaznacz cały
a2enmod rewrite
Kod: Zaznacz cały
RewriteEngine On
RewriteRule ^test/([0-9][0-9])/$ test.php?zmienna1=$1
Kod: Zaznacz cały
<?php
echo 'TU MA BYC $_GET[\'zmienna\'] >>'.$_GET['zmienna1']."<<
";
echo "
";
print_r($_GET);
?>
Kod: Zaznacz cały
http://localhost/~moj_user/htaccess/test/1
Kod: Zaznacz cały
Options FollowSymLinks
[Dodano: 2007-11-26, 12:45]
Dobra znalazłem, więc może się to komuś przyda na później. Ok więc korzystam u siebie z modułu UserDir, żeby trzymać stronki u siebie w katalogu public_html. ¯eby działał mod-rewrite w apache2.conf lub httpd.conf trzeba umieścić / zmienić opcję AllowOverride na All. U mnie wygląda to tak:
Kod: Zaznacz cały
<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>
<Directory /home/*/public_html>
Options Indexes FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
AccessFileName .htaccess
<Files ~ "^\.ht">
Order allow,deny
Deny from all
</Files>
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteLog "/var/log/apache2/rewrite.log"
RewriteLogLevel 9
</IfModule>
Kod: Zaznacz cały
Options +FollowSymLinks
RewriteBase /~b0ro/htaccess/
RewriteEngine On
RewriteRule ^test/(.*)$ test.php?zmienna1=$1 [L]