Apache Rewriterule problem

PHPportalen Forum Index » Webbservrar och operativsystem
Lägg ett bokmärke på hela tråden
Skapa nytt inlägg   Svara på inlägget
Visa föregående ämne :: Visa nästa ämne  
Startad av: Meddelande
toffie



Medlem i: 4741 dagar
Från: Stockholm
Status: Offline



#741584
Inlägg Skrivet: 2017-04-07 09:25      Ämne: Apache Rewriterule problem Citera

Hej på er,

Vet att jag fick experthjälp här för något år sedan med rewriterule och nu har jag ett nytt scenario som jag skulle behöva hjälp med. Har provat lite olika exempel, provat skriva lite själv efter apaches egen information men jag lyckas inte få det att fungera alls.


Min nuvarande setup ligger på ett internt nätverk och har ingen domän kopplad till servern. Därmed kör jag på IP 192.168.0.110

Webbsidan som jag behöver konfigurera för är därmed 192.168.0.110/admin

Resultatet som jag vill ha är 192.168.0.110/admin/login och det ska då bli översatt till 192.168.0.110/admin/index.php?do=login


De olika jag testat hittils är dessa;
KOD:
1:
# subfolder
2:
RewriteCond %{REMOTE_ADDR} ^192.\.168\.0\.110
3:
RewriteCond %{REQUEST_URI} !^/admin/
4:
RewriteCond %{REQUEST_URI} !^/somefolder/
5:
RewriteRule (.*) /admin/$1
6:
 
7:
# clean urls
8:
RewriteRule ^admin/([a-z0-9\-]+)$ admin/index.php?do=$1
9:
 
10:
 
11:
#RewriteEngine on
12:
#RewriteCond %{REMOTE_ADDR} ^192.\.168\.0\.110
13:
#RewriteCond %{REQUEST_FILENAME} !-d
14:
#RewriteCond %{REQUEST_FILENAME} !-f
15:
#RewriteRule ^(.*)$ index.php?do=$1 [QSA]
16:
 
17:
 
18:
#RewriteEngine on
19:
#RewriteCond %{REQUEST_FILENAME} !-d
20:
#RewriteCond %{REQUEST_FILENAME} !-f
21:
#RewriteRule (.*) index.php?do=$1 [QSA]



Någon som har möjlighet att hjälpa mig med detta? Vart ska sedan .htaccess filen ligga? Kan jag ha denna i /admin/ mappen eller måste den ligga ovanför denna? Jag vill inte att konfigurationen ska påverka andra Alias som är konfigurerade på servern.

Subfoldern /admin/ är konfigurerad som ett Alias enligt följande;
KOD:
1:
Alias /admin /var/www/admin
2:
 
3:
<Directory /var/www/admin>
4:
   Options +FollowSymLinks
5:
   AllowOverride None
6:
   <IfVersion >= 2.3>
7:
      Require all granted
8:
   </IfVersion>
9:
   <IfVersion < 2.3>
10:
      Order Allow,Deny
11:
      Allow from all
12:
   </IfVersion>
13:
 
14:
   AddType application/x-httpd-php .php
15:
 
16:
   <IfModule mod_php5.c>
17:
      php_flag magic_quotes_gpc Off
18:
      php_flag short_open_tag On
19:
      php_flag register_globals Off
20:
      php_flag register_argc_argv On
21:
      php_flag track_vars On
22:
      # this setting is necessary for some locales
23:
      php_value mbstring.func_overload 0
24:
      php_value include_path .
25:
   </IfModule>
26:
 
27:
   DirectoryIndex index.php
28:
</Directory>



Många tack på förhand!
 
Till toppen på sidan
Visa användarprofil Skicka privat meddelande
Koenigsegg



Medlem i: 3749 dagar

Status: Offline



#741585
Inlägg Skrivet: 2017-04-07 20:57      Ämne: Citera

Var du ska lägga htaccess-filen beror på var du vill att den ska gälla. Från Apache-dokumentationen:
Citat:
The configuration directives found in a .htaccess file are applied to the directory in which the .htaccess file is found, and to all subdirectories thereof.
 

_________________
Aktiv frilansare inom ganska mycket som har med webben att göra Smile
Till toppen på sidan
Visa användarprofil Skicka privat meddelande MSN Messenger
toffie



Medlem i: 4741 dagar
Från: Stockholm
Status: Offline



#741586
Inlägg Skrivet: 2017-04-08 09:39      Ämne: Citera

Alright, då hade jag det rätt åtminstone Smile

Någon idé om varför jag inte kan få det att fungera med ovanstående försök? .htaccess är för mig en universitetsutbildning.. Jag kan förstå viss regex när man kör det i PHP, dock långt ifrån allt.. men det som ska skrivas i .htaccess och allt det övriga i den rörande rewrite.. helt omöjligt! Shocked
 
Till toppen på sidan
Visa användarprofil Skicka privat meddelande
harald_b
Moderator



Medlem i: 4688 dagar
Från: Tavesta
Status: Offline



#741587
Inlägg Skrivet: 2017-04-08 12:48      Ämne: Citera

AllowOverride None gör att de centrala inställningarna inte kan ändras av lokala .htaccess-filer.
Du kan ändra till AllowOverride All
 

_________________
R.r - Ett fritt affärssystem
Till toppen på sidan
Visa användarprofil Skicka privat meddelande
toffie



Medlem i: 4741 dagar
Från: Stockholm
Status: Offline



#741596
Inlägg Skrivet: 2017-04-10 08:30      Ämne: Citera

harald_b
Super! Missade den helt och hållet, plus lärt mig lite nytt Smile

Många tack!!


För de som undrar framöver så använder jag följande .htaccess rewrite kod från ovan utan problem när jag ändrat AllowOverride i min apache konfiguration.

KOD:
1:
RewriteEngine on
2:
RewriteCond %{REQUEST_FILENAME} !-d
3:
RewriteCond %{REQUEST_FILENAME} !-f
4:
RewriteRule (.*) index.php?do=$1 [QSA]
 
Till toppen på sidan
Visa användarprofil Skicka privat meddelande
Visa tidigare inlägg:   
Skapa nytt inlägg   Svara på inlägget
PHPportalen Forum Index » Webbservrar och operativsystem
Hoppa till:  
Du kan inte skapa nya inlägg i det här forumet
Du kan inte svara på inlägg i det här forumet
Du kan inte ändra dina inlägg i det här forumet
Du kan inte ta bort dina inlägg i det här forumet
Du kan inte rösta i det här forumet
Du kan inte bifoga filer i detta forum
Du kan inte ladda ner filer från detta forum
Kontakta oss på adressen: info@phpportalen.net
Webbplatsen bygger i grunden på phpBB © 2001, 2002 phpBB Group

Modifieringar har senare gjorts i systemet av PHPportalen
Sid och logotypdesign skapad av Daren Jularic