Kirjoittaja Aihe: Windows-käyttäjän tunnistus webpalvelimella  (Luettu 3152 kertaa)

vtp

  • Käyttäjä
  • Viestejä: 285
    • Profiili
Windows-käyttäjän tunnistus webpalvelimella
« : 24.07.09 - klo:22.04 »
Tervehdys! Pystyttelen tässä hiljakseen kotona pyörivää www-palvelinta joka toimii samalla mythtv:n alustana. Homma on pahasti kesken enkä tiedä, valmistuuko se koskaan...

Joka tapauksessa ajatuksena olisi tehdä pieni kiusa Windows-käyttäjille. Tarkoituksena olisi tunnistaa ne ja sitte ystävälliseen sävyyn vaikka laukaista popup seuraavalla tekstillä:

"Järjestelmä on havainnut, että käytät Microsoftin Windows-käyttöjärjstelmää. Oheisesta linkistä voit päivittää koneesi käyttämään nykyaikaista Ubuntu-linuxia!"

Tai jotain sen tapaista.
 ;D

Storck

  • Vieras
Vs: Windows-käyttäjän tunnistus webpalvelimella
« Vastaus #1 : 24.07.09 - klo:22.06 »
Kuulostaa aika rajulta  :o

vtp

  • Käyttäjä
  • Viestejä: 285
    • Profiili
Vs: Windows-käyttäjän tunnistus webpalvelimella
« Vastaus #2 : 24.07.09 - klo:22.20 »
Yksi vaihtoehto on, että tarjoan vaan selkeästi kaikille Ubuntun latauslinkkiä: "Jos et ole jo siirtynyt Ubuntuun, niin voit ladata sen tästä. blaa blaa.... Vistan käyttäjät nimittäin kärsivät jo muutenkin ihan tarpeeksi, joten lienee turhaa aiheuttaa heille lisää tuskaa. (tosin joku pikku jäynä olis silti ihan kiva...) ;D ;D ;D

No, huumori sikseen ja muutenkin off-topic: Kyllähän wintoosaa käyttää hädän tullen, mutta ottaa vaan kertakaikkiaan pannuun tuo MS monopoli  >:( Käyttöjärjestelmiin pitäisi saada lopultakin aito kilpailu.

Storck

  • Vieras
Vs: Windows-käyttäjän tunnistus webpalvelimella
« Vastaus #3 : 25.07.09 - klo:00.01 »
Idea on aivan loistava. Kannattaa olla varovainen ettei jutusta ole enemmän haittaa kuin hyötyä. Joku hyvä humoristinen lause ois kyllä paikallaan - kuitenkin melko neutraali. Minun mielipide.

vtp

  • Käyttäjä
  • Viestejä: 285
    • Profiili
Vs: Windows-käyttäjän tunnistus webpalvelimella
« Vastaus #4 : 25.07.09 - klo:07.12 »
Juuri sellaista ajattelin. Olisiko kellään vinkkejä siihen, mite käyttöjärjestelmän tutkinta tehdään? Kannattaako tuo tehdä palvelimen päässä vai javascriptillä selaimessa?

_Pete_

  • Käyttäjä
  • Viestejä: 1845
  • Fufufuuffuuu
    • Profiili
Vs: Windows-käyttäjän tunnistus webpalvelimella
« Vastaus #5 : 25.07.09 - klo:07.33 »
Juuri sellaista ajattelin. Olisiko kellään vinkkejä siihen, mite käyttöjärjestelmän tutkinta tehdään? Kannattaako tuo tehdä palvelimen päässä vai javascriptillä selaimessa?


Palvelimen päässä, koska selaimessa voi olla javascriptin suoritus pois päältä joten ei toimi silloin.

Tomin

  • Palvelimen ylläpitäjä
  • Käyttäjä / moderaattori+
  • Viestejä: 11481
    • Profiili
    • Tomin kotisivut
Vs: Windows-käyttäjän tunnistus webpalvelimella
« Vastaus #6 : 25.07.09 - klo:09.29 »
Juuri sellaista ajattelin. Olisiko kellään vinkkejä siihen, mite käyttöjärjestelmän tutkinta tehdään? Kannattaako tuo tehdä palvelimen päässä vai javascriptillä selaimessa?


Palvelimen päässä, koska selaimessa voi olla javascriptin suoritus pois päältä joten ei toimi silloin.

Enpä tiedä onko tuo kovin tärkeää, vaikka samapa tuo...
Kannattanee sitten laittaa keksejä (tai jotain, koska nekin vaativat selaimen hyväksymään ne), että ei ilmoita tuota joka kerta jos vaan onnistuu. :) Ellei se ole sitten sen verran piilossa.

Tässä selaimen (ja käyttiksen) tietoja JavaScriptillä: http://w3schools.com/js/tryit.asp?filename=tryjs_browserdetails
Tuon perusteella lienee helppoa luoda sivulle tekstiä lisäävä (tai alert-ikkunan näyttävä) tekstin pätkä.

PHP:stä en sitten tiedä, mutta google kertonee jotain. ::)
Automaattinen allekirjoitus:
Lisäisitkö [RATKAISTU] ketjun ensimmäisen viestin aiheeseen ongelman ratkettua, kiitos.

Kullervo

  • Käyttäjä
  • Viestejä: 876
    • Profiili
Vs: Windows-käyttäjän tunnistus webpalvelimella
« Vastaus #7 : 25.07.09 - klo:11.04 »
Juuri sellaista ajattelin. Olisiko kellään vinkkejä siihen, mite käyttöjärjestelmän tutkinta tehdään? Kannattaako tuo tehdä palvelimen päässä vai javascriptillä selaimessa?

Server Side Includes eli SSI ja tarvittaessa JavaScript-koodi
http://httpd.apache.org/docs/2.2/howto/ssi.html
http://httpd.apache.org/docs/2.2/mod/mod_include.html#xbithack

Tha-Fox

  • Käyttäjä
  • Viestejä: 3315
  • Arch Linux && CentOS
    • Profiili
    • http://kettu.dy.fi
Vs: Windows-käyttäjän tunnistus webpalvelimella
« Vastaus #8 : 28.07.09 - klo:15.00 »
Samanlaista ollut suunnitteilla täälläkin, tosin vain selaimen tasolla. Eli IE:n käyttäjille varoitus, ettei sivu toimi välttämättä oikein johtuen standardien puutteellisesta noudattamisesta ja linkki perään vaihtoehtoselainten asentamiseen.

johnsmith

  • Käyttäjä
  • Viestejä: 35
    • Profiili
Vs: Windows-käyttäjän tunnistus webpalvelimella
« Vastaus #9 : 28.07.09 - klo:16.00 »
Olen joskus tehnyt myös jotain sellaista kun olin vasta pari vuotta käyttänyt Linuxia ja halusin  valistaa myös kaikkia muita. Enää en viitsi enkä edes yrittää kääntää kenenkään päätä..........

Mut tosiaan php pystyy lukemaan selaimen stringia ja siitä purkamaan käytiksen. Tässä mun joskus kirjoittama php koodi joka tulosti tervehdyksen riippuen selaimen stringista puretusta tiedosta. Kuten näet ne stringit on erilaiset kaikilla selaimilla tämä koodi on noin 5 vuotta vanha joten kannattaa testata erilaisilla selaimilla. Toivottavasti on avuksi.........

Koodia: [Valitse]
$var1 = ($_SERVER["HTTP_USER_AGENT"]);
$splitdata2 = explode(';',$var1);
$var4 = $splitdata2[2];
$var5 = preg_split('/\s+/',$var4);
$opera = $splitdata2[1];
$opera1 = preg_split('/\s+/',$opera);
$operaie = $splitdata2[3];
$operaie1 = preg_split('/\s+/',$operaie);
if ( $var5[1] ===  'U' ) # if opera identifys as  mozilla or opera
  echo "<h3>you are running","\t","<center>",$opera1[1],"</h3><center>";
elseif ( $var5[1] === 'X11') # if opera identifys as  internet explorer</h3>","\t","<center>",
  echo "<h3>you are running","\t","<center>",$operaie1[1],"</h3><center>";
else
switch($var5[1]){
  case Linux;
echo "<h3>you are running linux</h3>";
  break;
 case Windows;
echo "<h3>you are running windows</h3>";
 break;
 case FreeBSD;
echo "<h3>you are running FreeBSD</h3>";
 break;
 default;
echo "<h3>you are running</h3>","\t","<h3><center>",$var5[1],"</h3><center>";}
« Viimeksi muokattu: 28.07.09 - klo:18.34 kirjoittanut johnsmith »