Avatar billede Morten Professor
25. maj 2017 - 21:28 Der er 30 kommentarer og
1 løsning

.htaccess

Hej Eksperter

Jeg prøver at få min url til at se pænere ud, jeg prøver med dette her:
.htaccess

RewriteEngine on
RewriteRule ^([a-zA-Z[B]0-9[/B]_]+)/([a-zA-Z[B]0-9[/B]_]+)/([a-zA-Z[B]0-9[/B]_]+)/$ index_.php?id=$1&mid=$2&artid=$3 [L]


Men der sker bare ingen ting.
Jeg har prøvet på min server, og på localhost hvor jeg kan se rewrite_module er sat til.

Med venlig hilsen
Morten
Avatar billede jakobdo Ekspert
25. maj 2017 - 22:00 #1
Hvorfor har du [B] og [/B] omkring 0-9 ?
Avatar billede Morten Professor
25. maj 2017 - 22:03 #2
Det var en kode jeg fandt troede det skulle være der :D Men prøvede at fjerne det men virkede ikke
Avatar billede Morten Professor
25. maj 2017 - 22:04 #3
Jeg har prøvet vildt mange forskellige måder men syntes ikke jeg kan finde nogen der virker for mig
Avatar billede Morten Professor
25. maj 2017 - 22:07 #4
rettede udgave:

RewriteEngine on
RewriteRule ^([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/$ index_.php?id=$1&mid=$2&artid=$3 [L]
Avatar billede Morten Professor
25. maj 2017 - 22:12 #5
har også prøvet denne løsning:
http://www.desiquintans.com/cleanurls
Avatar billede jakobdo Ekspert
25. maj 2017 - 23:50 #6
Hvordan ser dine links ud ?

Jeg har tidligere rodet med rewrite og det kan netop være en "lort" at fejlsøge, da det er svært at fejlsøge på.

Men jeg plejede gerne at starte basic.
Fjern f.eks. 2 af elementerne og se om du kan få det til at virke med:

RewriteEngine on
RewriteRule ^([a-zA-Z0-9_]+)/$ index_.php?id=$1 [L]

Og udbyg det med flere led.
Avatar billede jakobdo Ekspert
25. maj 2017 - 23:54 #7
Har du evt. prøvet denne: http://www.generateit.net/mod-rewrite/index.php

og du er sikker på rewrite engine virker ?
Avatar billede jakobdo Ekspert
25. maj 2017 - 23:55 #8
Faldt lige over denne:

RewriteEngine On
RewriteLog "/var/log/apache2/rewrite.log"
RewriteLogLevel 3

Prøv den og se om du kan få lidt mere info på den konto.
Avatar billede cht22 Professor
26. maj 2017 - 06:03 #9
Kan den her bruges?

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /evt-subfolder/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /evt-subfolder/index.php [L]
</IfModule>
# END WordPress
Avatar billede Morten Professor
26. maj 2017 - 06:41 #10
Det var nogen rigtig gode forsøg, og jeg prøvede den generater, kommer jo med de rigtige indstiller kan man da kun gå ud fra, men virkede ikke.
Og prøvede også wordpress metode så der må da være et eller andet helt galt.
Er der nogle ting man skal skrive i php filen?
Avatar billede jakobdo Ekspert
26. maj 2017 - 08:26 #11
Prøv dette i en php kode:

<?php
in_array('mod_rewrite', apache_get_modules());
?>

Så bør du kunne få info om mod_rewrite er aktivt eller ej.
Avatar billede Morten Professor
26. maj 2017 - 13:15 #12
Kan se det er slået til.

Kan der på denne side med alt hvad der er af kode, være til grund det ikke virker:


<?php require_once('body_model/side_body.php'); ?>
<?php require_once('body_model/artikel_body.php'); ?>
<?php require_once('body_model/artikel_body_sub.php'); ?>
<?php require_once('body_model/banner_body.php'); ?>
<!doctype html>
<!--[if lt IE 7]> <html class="ie6 oldie"> <![endif]-->
<!--[if IE 7]>    <html class="ie7 oldie"> <![endif]-->
<!--[if IE 8]>    <html class="ie8 oldie"> <![endif]-->
<!--[if gt IE 8]><!-->
<html class="da">
<!--<![endif]-->
<head>
<meta charset="iso-8859-1">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Velkommen til Syddanske.dk</title>
<link href="boilerplate.css" rel="stylesheet" type="text/css">
<link href="Mobil_style/mobil_style_.css" rel="stylesheet" type="text/css">
<link rel="stylesheet" type="text/css" href="css/body_style.css">
<link rel="stylesheet" type="text/css" href="cssmenu/styles.css">
<link rel="stylesheet" href="lightbox2-master/dist/css/lightbox.min.css">
<script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
<script src="cssmenu/script.js"></script>
<!--
To learn more about the conditional comments around the html tags at the top of the file:
paulirish.com/2008/conditional-stylesheets-vs-css-hacks-answer-neither/

Do the following if you're using your customized build of modernizr (http://www.modernizr.com/):
* insert the link to your js here
* remove the link below to the html5shiv
* add the "no-js" class to the html tags at the top
* you can also remove the link to respond.min.js if you included the MQ Polyfill in your modernizr build
-->
<!--[if lt IE 9]>
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<script src="respond.min.js"></script>
</head>
<body>
<div class="gridContainer clearfix">
  <div id="Banner"><?php banner_body(); ?></div>
  <div id="Menu"><?php include('cssmenu/oversigt.php'); ?></div>
  <div id="Body"><div>&nbsp;</div>
  <?php artikel_body($con); ?>
</div>
  <div id="Side_body"><div>&nbsp;</div>
  <?php side_body($con); ?></div>
  <div id="Copyright" class="Center"><?php include('footer/copyright_footer.php'); ?></div>
</div>
<script src="lightbox2-master/dist/js/lightbox-plus-jquery.min.js"></script>
</body>
</html>
Avatar billede keysersoze Guru
26. maj 2017 - 14:05 #13
wauw  - en ie6 klasse :)

Hvordan skriver du dine links? Altså - er forventningen, at dine links automatisk ændrer sig i koden eller har du reelt skrevet et pænt link i koden men som ikke redirectes det rigtige sted hen eller slet ikke redirectes?
Avatar billede Morten Professor
26. maj 2017 - 14:17 #14
Jeg skriver dem sådan index_.php?id=<?php echo $MU_id; ?>&muid=<?php echo $id; ?>&artid=<?php echo $MU_id; ?>"><?php echo $MU_undermenu; ?>

Er det, det der er problemet?
Avatar billede cht22 Professor
26. maj 2017 - 14:29 #15
Hvorfor _ efter index når du skriver index_.php?
Avatar billede Morten Professor
26. maj 2017 - 14:35 #16
det er fordi jeg har en i forvejen, det er fordi de er lavet på forskellige måder, afhænge af hvad for en information og hvordan det ser ud.
Avatar billede Morten Professor
26. maj 2017 - 14:36 #17
men har også prøvet med forsiden index.php?id=1 det virkede heller ikke
Avatar billede keysersoze Guru
26. maj 2017 - 14:41 #18
Du skal skrive din URL som du gerne vil have den, fx /dyr/kat, og så er det din RewriteRule, der sørger for, at den rigtig bagvedliggende side bliver kaldt.
Avatar billede Morten Professor
26. maj 2017 - 15:05 #19
Så hvert enkelt url skal jeg så skrive i hånden, og derefter gå ind i ht. og skrive hvert enkelt url som så henviser til det rigtige.
Det kan man ikke når de alle er dynamiske.
Avatar billede Morten Professor
26. maj 2017 - 15:07 #20
Så jeg vil ikke kunne lave det, er det rigtig forstået?

Eller skal jeg lave så hvert enkelte dynamiske links og en link i databasen, så man skriver det der i stedet for at bruge ht.
Avatar billede Morten Professor
26. maj 2017 - 15:08 #21
Eller skal jeg lave så hvert enkelte dynamiske links har et unik link i databasen, så man skriver det der i stedet for at bruge ht.
Avatar billede Morten Professor
26. maj 2017 - 15:10 #22
#20 havde jeg ikke lige fået alle ord med :D
Avatar billede Morten Professor
26. maj 2017 - 15:14 #23
hm kan se det er sådan wordpress gør :) kan det passe, var lige i databasen, og kigge efter
Avatar billede Morten Professor
26. maj 2017 - 15:15 #24
sikke noget møj, så må jeg for eftertiden når jeg laver sider huske på dette.
Det var lige en enefuld til mig :D
Avatar billede keysersoze Guru
26. maj 2017 - 15:17 #25
Selvfølgelig kan du gøre det dynamisk og uden at kode en masse statisk ind i htaccess - men hvad der skal til afhænger af hvordan du gerne vil have din URL til at se ud og hvor komplekse regler du har. Hvis det er fint at din URL indeholder et ID har du formentlig allerede det i din database og så skal du ikke gøre så meget - men vil du have andet, fx et navn, i URL kan det give fin mening også at gemme dette i databasen som url-navn og altså som en uafhængig værdi så du kan ændre på "artikels" navn uden at det nødvendigvis går ud over URL.

Det kan sagtens være, at du ender med flere regler i htaccess, fx hvis du har flere områder eller en dybere struktur på dit site, men når først de er defineret skal de aldrig ændres.
Avatar billede Morten Professor
26. maj 2017 - 15:24 #26
Det er super og god forklaring.
Jeg vil for eftertiden gøre sådan, og ændre de sider jeg finder overskuelige at ændre dette.
Så jeg får noget mere seo ind i billedet, forbedre søgninger til websiden.
Tak for du kom med en afklaring på min problem, så skal jeg ikke hænge i det mere, og kan nu gå igang med at gøre noget, til at forbedre det.
Avatar billede keysersoze Guru
26. maj 2017 - 15:29 #27
Du burde relativt hurtigt skrive lidt kode til at opdatere alle eksisterende sider.
Avatar billede Morten Professor
26. maj 2017 - 15:33 #28
Ja det tror jeg også er allerede i fuld gang :D
Avatar billede Morten Professor
26. maj 2017 - 15:33 #29
Har bare lige nogle sider der skal ordnes
Avatar billede Morten Professor
26. maj 2017 - 15:37 #30
Er virkelig glad for du kom frem til en løsning.
Tak skal du have.
Avatar billede Morten Professor
26. maj 2017 - 22:27 #31
Jubii fandt ud af det, med det du sagde.
Så nu virker det som det skal.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester