WN

WN (https://www.wn.se/forum/index.php)
-   Serversidans teknologier (https://www.wn.se/forum/forumdisplay.php?f=4)
-   -   Hur ändrar jag "&id=" i PHP? (https://www.wn.se/forum/showthread.php?t=8444)

Jim_Westergren 2005-06-13 13:41

Läste precis detta på Google:

"Don't use "&id=" as a parameter in your URLs, as we don't include these pages in our index."

Jag använder det på min arkadsida. Hur kan jag ändra det?

Håller på att lära mig PHP men har inte kommit så långt.

Tack!

grazzy 2005-06-13 13:48

De menar troligen rent generellt och inte just specifikt variabelnnamnet id??

aikon 2005-06-13 14:32

Va? Ja, det verkar ju helt sjukt om Google skulle lägga sig i vilka parameternamn vi använder. Men vad menar dom annars?? Inga parametrar alls i url-en?

Jim_Westergren 2005-06-13 14:33

Jag tror det.

Har Googlat lite på det och fick fram följande klipp från olika forum:

"You should not use &id= in your URL's"

"Mod-rewrite is the ultimate answer, but I'd definately avoid building a site using?id= Better to use?page= or something."

"Using dynamic urls is ok so long as the URL doesn't change on every visit. Often times people will run their site with session ids in the url thus when a bot comes it keeps getting different urls as it spiders (no cookies = no way to remember the session from spider bot to spider bot). If you can make your urls "friendly" you should do so but at a minimum make sure they don't have &= ?= parameters that change on every view if you want to be indexed."

Mina URLs är alltid samma och baseras inte på kakor men borde jag använda Mod-rewrite och i så fall, vilka rader i .htaccess är det?

Tackar för hjälp. Sidan är ny och ännu inte i Googles index men jag vill att jag gör rätt från början.

Jim_Westergren 2005-06-13 14:43

Hittade en bra tråd i WMW (webmasterworld.com/forum92/3527.htm):

Citat:


In a nutshell:

# Link on the page: BMW (use php preg_replace to create this link if you can't change the underlying database)
# Visitor clicks the link, browser requests http://www.example.com/bmw-32-12
# Request arrives at your server.
# Mod_rewrite (assuming it's in httpd.conf) applies the following rule:

RewriteRule ^/bmw-([0-9]+)-([0-9]+)$ /bmw.php?cat=$1&id=$2 [L]

# Mod_rewrite modifies the local URL-path to /bmw.php?cat=32&id=12 and activates the bmw.php script.
# /bmw.php, using the cat and id parameters, produces the correct page with more links like step 1.
# Cycle repeats.

If you are interested in SEO aspects, use hyphens, not underscores, and certainly not commas (they are restricted characters and will have to be encoded as '%2C', which is ugly).

To prevent your 'unfriendly' URLs from being indexed, or to replace those previously indexed, add another rule:

RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /bmw\.php\?cat=([0-9]+)&id=([0-9]+)$
RewriteRule ^/bmw\.php$ http://www.example.com/bmw-%1-%2 [R=301,L]


Innan jag börjar sätta mig in i och göra detta. Finns det någon här som har gjort liknande? Några tips? Funkar ovanstående?

Tack.

jobego 2005-06-13 15:10

Jag har änvänd rewriterules i httpd.conf
Det funkar fint. Koden ovan ser vettig ut.

aikon 2005-06-13 15:19

Om dina url alltid är samma behöver du inte göra nåt, står det väl?
Citat:


"Using dynamic urls is ok so long as the URL doesn't change on every visit"

Problemet är väl vid sessionid.

WizKid 2005-06-13 17:54

Jag testade att göra en sökning på "metal gear solid id" utan " och fick upp massa träffar på sidor som har id som parameter så att Google skulle utesluta sådana sidor låter ju väldigt konstigt med tanke på att man får upp den i sökresultatet.

FredrikMH 2005-06-13 20:08

Jag precis som alla andra började med detta. En av mina sidor använder det och har tappar placeringar i Google enormt de sensate månaderna. Jag rekommenderar inte det om man är beroende av sökmotorer. Se bara på q= som används i sökningar. Den är garanterad blockad av google. Men på vissa sidor kanske det betyder något annat än quary.

Det är ju med all fördel att använda mod_rewrite. Jag pekar allting på index.php med undantag från de filer som innehåller filendelse som inte ska peka dit. Sedan tar index.php hand om requests genom $_SERVER['REQUEST_URI'] för att välja vilka sidor som ska inkluderas.

koala 2005-06-15 18:00

Måste passa på att fråga om inställningarna måste göras i httpd.conf? Eller går det även att göra dem i .htaccess eller liknande?

Eller hur gör man om man har en sida på ett webbhotell, går det över huvud taget att använda mod_rewrite då? Jag gissar på nej.

grazzy 2005-06-15 18:05

Att inte tillåta mod_rewrite vore att skjuta sig lite i foten. Typ som att köra windows på sina servrar... eller nåt.

Jonas 2005-06-15 20:45

Citat:

Ursprungligen postat av koala
Måste passa på att fråga om inställningarna måste göras i httpd.conf? Eller går det även att göra dem i .htaccess eller liknande?
Eller hur gör man om man har en sida på ett webbhotell, går det över huvud taget att använda mod_rewrite då? Jag gissar på nej.


Och ändringar i httpd.conf gör det hela snabbare än att ha det i .htaccess.

Dom flesta hotell tillåter mod_rewrite.

Citat:

Ursprungligen postat av grazzy
Att inte tillåta mod_rewrite vore att skjuta sig lite i foten. Typ som att köra windows på sina servrar... eller nåt.

Det finns mod_rewrite tillägg till Windows servers...

grazzy 2005-06-15 20:47

En fiat blir inte en porsche för att man slänger på den aluminiumfälgar.. sorry. :)

Jim_Westergren 2005-06-15 20:52

Jag själv struntar i detta för denna webbplats eftersom det ändå inte är något för roboten att indexera. Allt finns typ på förstasidan. Skulle ändå bara bli dup content.

koala 2005-06-15 22:44

Provade att fixa så att mod_rewrite funkar på min dator (som jag använder när jag utvecklar). Jag har Windows XP, Apache 2.x, PHP 5.x, MySQL 4.x

Så här kan du göra om du har samma som jag:

Ändra följande i */Apache2/conf/httpd.conf:
Kod:

LoadModule rewrite_module modules/mod_rewrite.so #denna rad ska inte vara kommenterad
<Directory "C:/www/"> #ändra till din sökväg
  AllowOverride All #default: none
</Directory>

Sedan skapar du en fil vid namn .htaccess i aktuell katalog (Windows klagar på filnamnet, men döp filen i din texteditor eller byt namn via cmd).

Så här ser min ut (för Mambo CMS):
Kod:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*) index.php

Hoppas att detta hjälper någon.

Jim_Westergren 2005-06-21 14:20

Läste precis följande på WMW (webmasterworld.com/forum30/29720.htm) från GoogleGuy (känd representant från Google):

Citat:

I've been aching for a long time to mention somewhere official that sites shouldn't use "&id=" as a parameter if they want maximal Googlebot crawlage, for example. So many sites use "&id=" with session IDs that Googlebot usually avoids urls with that parameter, but we've only mentioned that here and on a few other places. Getting started on things like that will be nice. I appreciate the people who sat down and tried to tease out the info on our current webmaster pages and organize it more logically.
Han snackar om att webmaster sidorna att uppdaterats men som ni ser är det session IDs som det gäller och inte alla "&id=". Enligt detta uttalande så står det altså fel på webmaster guidelines och raden:

Citat:

"Don't use "&id=" as a parameter in your URLs, as we don't include these pages in our index."
Borde ändras till:

Citat:

"Don't use "&id=" with session IDs as a parameter in your URLs, as we don't include these pages in our index."
Hoppas det klarar upp för vissa.

EDIT: Glömde URL till tråden


Alla tider är GMT +2. Klockan är nu 13:39.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson