Meddelande

Minska
No announcement yet.

.htaccess fråga gällande url:er

Minska
X
 
  • Filter
  • Klockan
  • Show
Clear All
new posts

  • .htaccess fråga gällande url:er

    Har en del dåliga och gamla URLr som jag behöver peka vidare till en ny sajt. Får dock inte det att fungera och antar att det beror på alla konstiga tecken i urlen.

    Exempel:
    PHP-kod:
    /goto.php?ref=y&sess=+A5D5740191D51+F18435A52+9+B581D1058+E+357+9+25D51+F+C42&id=2115,"1,047",684,00:03:48,680,32.06%,33.81%,$0.00 
    Så här koden ut just nu:

    PHP-kod:
    Options +FollowSymLinks
    RewriteEngine On

    RewriteBase 
    /
    RewriteCond %{REQUEST_URI} !^robots.txt
    RewriteCond 
    %{REQUEST_URI} !^favicon.ico
    RewriteCond 
    %{REQUEST_URI} !^sitemap.xml
    RewriteCond 
    %{REQUEST_URI} !^sitemap.xml.gz
    RewriteCond 
    %{REQUEST_FILENAME}  !-d
    RewriteRule 
    ^/?([a-z-A-Z?=+$%&":,_0-9]+)$ $1.php [NC,L]

    RewriteCond %{HTTP_HOST} ^url\.se$
    RewriteRule ^(.*)$ http://www.url.se/$1 [R,L] 
    Jag simpla url-pekningar att fungera men inte den här:

    PHP-kod:
    Redirect 301 /goto.php?ref=y&sess=+A5D5740191D51+F18435A52+9+B581D1058+E+357+9+25D51+F+C42&id=2115,"1,047",684,00:03:48,680,32.06%,33.81%,$0.00 http://www.url.se/sida 
    Kan någon se vad det beror på? Skulle uppskattas enormt!
    Last edited by caze; 2013-03-16, 13:19.
    Carl / Digitalbyrå i Stockholm - Digital1

  • #2
    Querystringen behandlas separat från bas-URLen. Querystringen ligger istället i variablen %{QUERY_STRING} som du kan komma åt med en RewriteCond. Om
    Om du vill plocka ut något ur queystringen kan du göra så här. Notera %1 istället för $1 för att komma åt det som matchades.
    PHP-kod:
    RewriteCond %{QUERY_STRINGnågot=([^&]*)
    RewriteRule . %1.php [NC,L
    Om du bara vill bevara queystringen och inte matcha något särskilt ur den ska du använda direktivet QSA (för querystring append). Om du dessutom inte vill ändra något i URLen så kan du använda - som ersättningssträng. T ex:
    PHP-kod:
    Options +FollowSymLinks
    RewriteEngine On

    RewriteBase 
    /
    RewriteCond %{REQUEST_URI} !^robots.txt
    RewriteCond 
    %{REQUEST_URI} !^favicon.ico
    RewriteCond 
    %{REQUEST_URI} !^sitemap.xml
    RewriteCond 
    %{REQUEST_URI} !^sitemap.xml.gz
    RewriteCond 
    %{REQUEST_FILENAME}  !-d
    RewriteRule 
    . - [NC,QSA,L]

    RewriteCond %{HTTP_HOST} ^url\.se$
    RewriteRule ^(.*)$ http://www.url.se/$1 [R,QSA,L] 
    Gameboy Genius - Foto: Gatukonst och elektronikporr
    Internklippning:
    1) Snaggning av fångar.
    2) Klippning frisörer emellan.

    Kommentera


    • #3
      Tack för ditt svar! Har testat att lägga in detta men får det inte att fungera...

      Förtydligande: Jag vill kunna peka ett 20-tal URLr med motsvarande struktur som angivet i första inlägget. De ska landa till unika URLr så behöver skriva flera rader med
      Redirect 301 /goto.php?ref=y&sess=+A5D5740191D51+F18435A52+9+B581D1058+E+3 57+9+25D51+F+C42&id=2115,"1,047",684,00:03:48,680,32.06%,33. 81%,$0.00 http://www.url.se/sida
      Carl / Digitalbyrå i Stockholm - Digital1

      Kommentera


      • #4
        Redirect har inte stöd för querystrings. Du måste använda RewriteCond+RewriteRule för att matcha i querystrings, som jag visade ovan.
        Gameboy Genius - Foto: Gatukonst och elektronikporr
        Internklippning:
        1) Snaggning av fångar.
        2) Klippning frisörer emellan.

        Kommentera

        Working...
        X