Mam pewien problem z przekierowaniem w podkatalogu, ale już przybliżam o co mi chodzi konkretnie.
Może zacznę od początku.
Adres skryptu: http://10.1.1.1/skrypt/
Skrypt znajduje się w katalogu /var/www/html/skrypt/
Plik .htaccess w /var/www/html/skrypt/:
Options -Indexes +FollowSymLinks RewriteEngine On RewriteRule ^$ index.php [L] RewriteRule ^/$ index.php [L] RewriteRule ^index.html$ index.php [L] RewriteRule ^index.html/$ index.php [L] RewriteRule ^([a-zA-Z0-9_\-]+),([^\,]+),([^\,]+),([^\,]+)$ index.php?link=$1&option=$2&category=$3&item=$4 [L]
I tutaj jest wszystko w porządku. Odpowiednie parametry/gety kieruję z linków typu:
http://10.1.1.1/skrypt/link
http://10.1.1.1/skrypt/link,option
http://10.1.1.1/skrypt/link,option,category
http://10.1.1.1/skrypt/link,option,category,item
W lokalizacji /var/www/html/skrypt/ jest podkatalog admin ( /var/www/html/skrypt/admin ), chciałbym, żeby on miał zachowanie analogiczne do poprzedniego. Czyli żeby linki były przekazywane w taki sposób:
http://10.1.1.1/skrypt/admin/link
http://10.1.1.1/skrypt/admin/link,option
http://10.1.1.1/skrypt/admin/link,option,category
http://10.1.1.1/skrypt/admin/link,option,category,item
W jaki sposób to uzyskać? Co zmienić/dołożyć w htaccess w podkatalogu admin.
RewriteBase /admin/ RewriteRule ^(.*)$ http://%{HTTP_HOST}/skrypt/admin/$1 [R=301,L] RewriteCond %{HTTP_HOST} ^10.1.1.1/skrypt/admin$ [NC] RewriteCond %{REQUEST_FILENAME} !/admin/ RewriteRule ^(.*)$ /skrypt/admin/$1 [L] nie pomaga...
Po wejściu na linka http://10.1.1.1/skrypt/admin/link otrzymuję 404
Not Found Apache/2.4.10 (Debian) Server at 10.1.1.1 Port 80
Proszę kolegów o pomoc.
Problem został rozwiązany. Może się komuś przyda.
/etc/apache/apache2.conf
Dopisać:
<Directory "/var/www/html/"> Options Indexes FollowSymLinks AllowOverride All Require all granted </Directory>