Jump to content
GSForum - Segélyvonal

látogató ellenõrzése


Gazsika

Recommended Posts

Gazsika

Sziasztok!

 

Volna valakinek ötlete (scriptje, kiindulási pontja, stb.) ahoz, hogy hogyan lehetne megoldani, hogy www.xxx.hu domainon egy akarmi.html oldalra csak www.yyy.hu/akarminevu.html oldalról lehessen belépni?

Magyarul, aki nem , arról az oldalról érkezik az ott elhelyezett linken keresztül, az ne tudja az oldal tartalmát megtekinteni, hanem legyen átirányítva arra az oldalra ahonnét jönnie kellene.

Fontos, hogy statikus html oldalról van szó. (de nagy szavak ezek egy laikus szájából)

 

Megoldást inkább script (php, java) formájában kérnék, amolyan head szekcióba ezt, bodyba azt formában:-)

A kiindulási pont és az stb, csak helykitöltés jellegû a kérdésben, figyelembe véve korlátozott webfejlesztõ programozói ismereteimet:-)

Természetesen minden egyéb javaslatot szívesen olvasok... legfeljebb Én nem értem, de más aki magasabb kvalifikációval rendelkezik e téren (nem nehéz ûberelni) tanulhat belõle.

 

Hogy ne vesszen az enyészetbe a topic, amint megoldást, avagy "ilyet nem lehet wazze" választ kapok, a továbbiakban mindenféle a látogatók ellenõrzésével kapcsolatos téma otthona lehetne a topic.

Link to comment
Share on other sites

zsoltchelsea

Erre a HTML is képes! Üsd be a HEAD részbe:

<meta HTTP-EQUIV="refresh" content="10; URL=http://www.akarmi.com/valami.htm">

Persze a content="0" értéke nulla legyen, a linket pedig módosítsd. :ötlet:

Link to comment
Share on other sites

h.arpad
Volna valakinek ötlete (scriptje, kiindulási pontja, stb.) ahoz, hogy hogyan lehetne megoldani, hogy www.xxx.hu domainon egy akarmi.html oldalra csak www.yyy.hu/akarminevu.html oldalról lehessen belépni?

Ennél azért pontosabban kellene megmondanod. Tehát, azt akarod, hogy egy csak egy idegen oldalról lehessen a www.yyy.hu oldalra belépni? Ráadásul úgy, hogy ne is az index.html jelenjen meg, hanem az akarmi.html? Akkor:

Csak PHP-val vagy CGI-vel oldható meg: ellenőrizni kell pl. egy PHP-scripttel, hogy tényleg arról az oldalról törént-e belépés.

 

Pl: A www.xxx.hu domain-on legyen egy akarmi.php oldal. Erre át kell irányítani az index.php oldalt.

 

A www.xxx.hu/index.php tartalma kizárólag ez:

<?php
header("Location: http://www.xxx.hu/akarmi.php" );
?>

 

A www.xxx.hu/akarmi.php tartalma:

 

<?php
$checksite = $_SERVER['HTTP_REFERER'];
if ( $checksite == "http://www.yyy.hu/akarminevu.html" ) 
{
?>

... Ide jön az oldal teljes HTML-kódja ...

<?php
//ez történik, ha nem a www.yyy.hu/akarminevu.html oldalról hívják meg az oldalt:
} else {
print "<p>Az oldal meghívása nem megfelelő, vagy nem kaptam meg a hivatkozást (referer)!</p>";
}
?>

Link to comment
Share on other sites

payskin

Statikus HTML-ben egész komoly nehézséget okoz PHP kódot futtatni. Szerintem. ;) Persze, az is igaz, hogy JavaScripttel sem statikus, de lényegesen egyszerűbb. :D

 

Szóval, szerver nélkül nem fog menni, mert akkor nincs, ami nyilvántartsa, hogy honnan jöttek. De ha már van hova feltöltened, akkor Javascriptből viszonylag egyszerűen megoldható. Itt van egy példa: az a1 semmit nem csinál, csak meghívja az a2-t. Az a2-ben levő JavaScript megnézi, hogy honnan jöttünk. Ha közvetlenül hívjuk meg, akkor azt mondja, hogy nem szabad, ha nem közvetlenül, akkor kiírja, hogy honnan.

 

a1.html

<html>
<head>
</head>
<body>
1. oldal<br>
<a href="a2.html">2. oldal</a>
</body>
</html>

a2.html

<html>
<head>
<script type="text/javascript"><!-- 
if (document.referrer != '')
{
    document.write('Innen jöttél: ' + document.referrer);
}
else
{
    document.write('Ezt nem szabad!');
}
--></script>
</head>
<body>
</body>
</html>

Link to comment
Share on other sites

h.arpad
Statikus HTML-ben egész komoly nehézséget okoz PHP kódot futtatni. Szerintem.

Megoldást inkább script (php, java) formájában kérnék

Balázs, én ebbõl indultam ki. Persze jó az, ha kiírod a JS-es megoldást (az is dinamikus), de ezt az ellenõrzést olyan könnyen meg lehet kerülni, ha JS-et használsz, hogy szinte szóra sem érdemes. Arról nem is beszélve, hogy mi van akkor, ha a látogató nem egedélyezi a JS-ek futtatását a böngészõjében, és ez nagyon gyakran elõfordul, tudtán kívül is, (mondjuk egy rossz tûzfal vagy antivírus-konfigurálás után).

Link to comment
Share on other sites

payskin

Valóban.

Link to comment
Share on other sites

Gazsika
Erre a HTML is képes! Üsd be a HEAD részbe:

<meta HTTP-EQUIV="refresh" content="10; URL=http://www.akarmi.com/valami.htm">

Persze a content="0" értéke nulla legyen, a linket pedig módosítsd. :ötlet:

Ez nem jó! :(

 

Ha jól silabizálom ki a dolgot, akkor ez egy átirányítást csinál www.xxx.hu/valami.html-ről www.yyy.hu/akarmi.html-re. Ez eddig ok is lenne, csakhogy ha beírom a böngésző címsorába hogyaszonygya: http://www.yyy.hu/akarmi.html, akkor már láthatom is a tartalmat. Nekem meg ugye az kellene, hogy ha beírom, akkor ne jelenjen meg a tartalom, hanem csak abban az esetben, ha www.xxx.hu/valami.html-ről érkezett a jóember, az ott elhelyezett linkről.

Link to comment
Share on other sites

h.arpad

Na és, mégis mit gondolsz, az a néhány sor, amit korábban írtam, mire jó? :SNem lehet megoldani HTML-lel, azt hiszem Balázzsal ezt tisztáztuk az előbb.

Link to comment
Share on other sites

Gazsika

Árpi, Balázs:

 

A szerveren van php és msql futtatás lehetősége.

 

Már létezik a két weboldal, azt szeretném elérni, hogy a www.yyy.hu/akarmi.html oldal csak akkor jelenjen meg ha a www.xxx.hu/valami.html oldalról érkezik a jóravaló honpolgár, ellenkező esetben legyen átirányítva egy másik html oldalra, amit nézegethet ha akar. :) Teháta két lap - mind amiről érkezik, mind amire érkezik a látogató - .html oldal. De ha ezt a scriptet be lehet szúrni valami formában a két oldalba, és minthogy van php futtatás lehetősége a szerveren, működne is, az nekem nagyon megfelelne.

Minthogy hangsúlyosan .php kiterjesztést adtál az oldalaknak amikben a script fut, gondolom a tartalmát nem biztos, hogy jó lenne egy már létező html oldlaba változatlanul beszúrnom. Vagy mégis? Olyan bizonytalan vagyok. :)

 

Tudnál nekem egy olyan megoldást javasolni ezek alapján, amit ctrl-c & ctrl-v mechanizmussal egy szakmailag ily mélyen felkészült profi is meg tudna csinálni mint Én?

 

Rettentő hálás lennék a dologért, főleg altestem szétrúgattatásának elkerülése okán, ugyanis főnököm szabadságon van, holnap érkezik haza, én pedig végtelen tudásomtól eltelve babráltam a szerveren az ftp-t, és sikeresen töröltem ama két .html oldalt a két tárterületről melyekről szó vagyon. Nagy valószínűséggel, ha erre rájönne Kedves és Szeretve Tisztelt Ragyogó Géniuszú Főnököm (na ez a félelem, amikor már írásban is nyal az ember), mind a százpár kilóját satnya testem koszhadt és méltatlan szétrúgására ösztönözné.

 

Szóval az oldal így működött mindeddig mint ahogyan fentebb vázoltam, a tartalmi részét - csak szöveg volt - sikeresen visszaállítottam, de ez a "csakinnenjöhetszmegnézni" dolog meghaladja képességeim.

 

Egyszó mint száz, ha megesik szívetek egy megtört, reszkető lelkű porrárúgott tompor leendő tulajának sírámain, SEGÍTSETEK egy beilleszthető scripttel.

 

Köszi előre is jómagam és seggem nevében.

 

Ha bonyolultabb a dolog ennél, akkor PÜ-ben elküldök egy telefonszámot Nektek, s visszahívlak benneteket, vagy ha elkülditek a Tiéteket nekem, azonnal felhívlak benneteket.

Link to comment
Share on other sites

zsoltchelsea

Lehet, hogy én vagyok a hülye, de ha 0 a várakozási idő, akkor addig villan fel (nem is észrevehető) az oldal tartalma, ameddig el nem kezdi tölteni az eredetit. Jelen esetben egy sima üres oldal is elég, bár nem annyira szerencsés. Ez egy HTML megoldás, de nem hinném, hogy erre gondoltál, de leírtam, hogy meglegyen.

 

OFF

Azt hiszem három TZ-hez kicsit pihenni is kéne. Hmmm... Azt sem tudom, hányszorosa lett az eredetinek a fejem. :lol: Bocs a magánjellegű hülyeségekért.

ON

Link to comment
Share on other sites

h.arpad
Árpi, Balázs:

Minthogy hangsúlyosan .php kiterjesztést adtál az oldalaknak amikben a script fut, gondolom a tartalmát nem biztos, hogy jó lenne egy már létező html oldlaba változatlanul beszúrnom:-) vagy mégis?

A PHP-script értelmezéséhez a szerveren az oldalnak át kell futnia a PHP parancsértelmezőn. Mivel a legtöbb szerveren a .php kiterjesztés van beállítva erre a célra, és nem fut le a sima .html (bár ezt is be lehet állítani), nem nagyon hiszem, hogy a te kedvedért módosítanák (és nem is kezdőknek való beállítás, legalább .htaccess fájl használata kell hozzá).

 

Amúgy, mindent összerakva, annak a script-nek, amit megírtam, tökéletesen kell működnie. Amíg ki nem próbáltad, nem tudok segíteni.

Link to comment
Share on other sites

payskin

A teendõk röviden:

 

1. Az ellenõrzõs HTML-t nevezd át php-re: akármi.html --> akármi.php

2. A másik HTML-ben javítsd ki az ellenõrzõs HTML-re való hivatkozást .php-ra az a href-ben.

3. Nyisd a php-t egy szerkesztõben.

4. Copy/Paste a php állomány elejére (a elé) h.arpad második kódjának elsõ 5 sorát.

5. Copy/Paste a php állomány végére (a után) a maradék sorokat.

6. Teszt.

 

+1. Kevesebb mosoly, több odafigyelés a szövegre, különösen a mondatkezdõ nagybetûkre!

 

@zsoltchelsea: Nem fogom, hogy ez hogy megoldás a problémájára.

 

Link to comment
Share on other sites

Gazsika

Köszi a segítséget, minden OK, megmenekültem.

 

Mûködik minden rendesen.

 

(mosoly elmarad, de higgyétek el, nagyon vigyorgok)

 

Még egyszer, nagyon köszi a segítséget!

Link to comment
Share on other sites

zsoltchelsea

@Balázs: Én meg a problémáját nem fogom teljesen (mint mostanra kiderült :)).

Link to comment
Share on other sites

h.arpad
Én meg a problémáját nem fogom teljesen

Úgy viszont elég nehéz segíteni. :hááát: (Van erre egy latin mondás, de most nem szeretnék kötözködni. :S )

Link to comment
Share on other sites

zsoltchelsea

Nem azért írtam, hogy leszólj, csak beismertem. :) A latin mondást pedig elküldheted PÜ-ben, legalább gyakorlok a dogára.

Link to comment
Share on other sites

payskin

Si tacuisses, philosophus mansisses? ;)

Link to comment
Share on other sites

h.arpad

Elképesztõ. Gondolatolvasó vagy! Igen. :D

Link to comment
Share on other sites

zsoltchelsea

Egy kis OFF.

Illendõnek találom, hogy válaszoljak:

Amari maior laus est, quam timeri.

Imperare sibi maximum imperium est.

Homo sum; humani nihil a me alienum puto.

Csak a válaszért írtam, nincs vele semmilyen szándékom.

ON

Link to comment
Share on other sites

Gazsika

Látom kultúr irányt vett a Topic. :-)

 

Köszi a segítséget, megmenekültem a veréstõl, bár drága fõnököm azonnal észrevette a turpisságot, és elmondtam neki a dolgot.

Hát 10 másodperc alatt bent volt az oldalon úgy, hogy egyszerûen beírta a böngészõbe a védett oldal címét , ráment az oldalra aztán amikor nem engedte be, megnyitott valami txt fájlt, beleírt, elmentette aztán frissítette a böngészõablakot és hopp már benn is volt.

 

Azt mondta, ha jól viselkedek, akkor meghálálhatom nektek a segítséget, kedden amikor ismét itthon lesz leírja nekem a session_ID fügvénykezelõ scriptet, hogy megoszthassam veletek, hátha nem ismeritek az alkalmazását. Azt mondja azt alkalmazzátok inkább a referer helyett.

 

Én ugyan nem sokat értettem abból amit mond, de valami olyat magyarázott, hogy az induló oldalon lévõ script generál egy 128 karakteres jelszót amit az érkezési oldalon lévõ script értelmez, s így ellenõrzi a megtekintési jogosultságot a tartalomhoz.

Ti biztosan jobban értitek mirõl van szó, ha érdekel a megoldás benneteket, szívesen megosztom a segítségért cserébe.

Ha pedig ismeritek a lehetõséget, akkor elnézést az ismételt alkalmatlankodásért, s még véletlenül sem kioktatás volt a szándékom.

Link to comment
Share on other sites

h.arpad
kedden amikor ismét itthon lesz leírja nekem a session_ID fügvénykezelő scriptet

Megelőzzük, vagy kivárjuk? :lol: Azt nem mondtuk, hogy nem lehet kijátszani. Csak nem olvastam utána, hogy pontosan hogyan kell megoldani. Lehet, hogy csak az egyik megoldás a session. :P:ötlet: Hoppá... túl sok kávét ittam, mert megvan a másik. :D MySQL adatbázis... Kifejtsem? És akkor idézd be a scriptet, amit kaptál.

 

Látom kultúr irányt vett a Topic. :-)

Igen, és a kultúrnapnak itt mára vége is, de nyugodtan folytathatjuk egy kultúrtopicban. :démonikacaj:

Link to comment
Share on other sites

Gazsika

Akár meg is lehet elõzni:-)

 

Én innét jól bemagolom, és amint elkezdi nekem írni, szépen legyintek egyet, és befejezem:-)

 

Hátha le lenne törve a nagy szakmai önérzete... bár lehet, hogy csak röhögne egyet és elküldene a fenébe.

 

Adatbázishasználat az tuti nincs ezen az oldalon. Html lapok közt ugrálnak az emberkék linkrõl linkre, és ezzel van megoldva, hogy csak egy bizonyos oldalról lehessen menni a következõ oldalra.

 

Ez egyébként tényleg nem rosz ötlet, hogy beírjátok ide nekem a megoldást én meg letöröm a szarvát a "mester"-nek egy pillanatra:)

Link to comment
Share on other sites

h.arpad

No, hát összedobtam egy kis macskakaparást (egy önkezűleg elkövetett rajz), a számok magyarázatát azért kiírom röviden még:

>>kattints ide<<

1. Véletlenszám+időbélyeg generálása

2. Előbbi kettő eltárolása

3. Ellenőrzés, hogy mindkét adatbázisban szerepel-e ugyanaz

4. Ellenőrzés végén a sor törlése az adatbázisból (mindkettőből -ez lemaradt)

5. Megfelelő oldal megjelenítése, az ellenőrzés kimenetelétől függően

 

Azt még mellette megjegyzem, hogy egyik oldalról problémametesen megnyitható mindkét oldal adatbázisa, és a PHP egyszerre képes kezelni, tehát ez nem okoz gondot.

 

Adatbázishasználat az tuti nincs ezen az oldalon.

A oldalra is azt mondtad, hogy statikus, aztán mégse lett az.

A kódot is megírnám, de csodálkoznék, ha egyből működne, mert eddig ez nem jött össze csak egyszer. :)

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...