Jump to content

SUBIECTE NOI
« 1 / 5 »
RSS
Masina veche sau indatorat in ban...

Incalzire cu Boiler cu PDC + IPAT...

Salariu de șofer Uber 8000 l...

Problema token semnatura electron...
 Incarcator diy China

Unde au disparut tancurile federa...

RMN Decontat

Jgheab clasic forma "U"- ...
 Reparatie plafoniera LED

Problema PC - se blocheaza sau re...

Notebook HP 840G2 - Upgrade RAM, ...

Defect ciudat Videorecorder Panas...
 lege de reglementare a shrinkflat...

Care este cota parte la succesiun...

Camera auto DVR PNI Voyager S2600...

Cartelul din Carpati - mafia PNL ...
 

Vizializarea unei singure pagini pe un server apache

- - - - -
  • Please log in to reply
18 replies to this topic

#1
vdingo11

vdingo11

    Senior Member

  • Grup: Senior Members
  • Posts: 4,273
  • Înscris: 24.08.2005
Salutare.
  In reteaua locala am un calculator pe care am instalat un server Apache prin intermediul caruia pot accesa din reteaua locala anumite pagini html.
As dori ca pe langa acest server Apache sa am posibilitatea de a bloca (de pe un calc din reteaua locala)  toate calculatoarele din reteaua locala sa nu poata accesa decat o anumita pagina.
Spre exemplu: eu sa permit sa se poata accesa doar http://server/dir1/pagina1.html iar daca un utilizator incearca sa acceseze http://server/dir1/pagina2.html sau http://server/dir2/pagina1.html sa nu poata.
Evident mi-ar trebui o aplicatie ca sa poata fi realizat acest lucru si de catre o persoana care are doar cunostinte de utilizare a unui calculator.

Este posibil asa ceva?

Edited by vdingo11, 09 November 2012 - 08:52.


#2
TinCup

TinCup

    Member

  • Grup: Members
  • Posts: 377
  • Înscris: 01.12.2006
Nu sunt expert in asta, dar cred ca problema poate fi rezolvata foarte usor folosind fisiere .htaccess .. cauta putin pe google niste exemple, nu e foarte complicat

#3
vdingo11

vdingo11

    Senior Member

  • Grup: Senior Members
  • Posts: 4,273
  • Înscris: 24.08.2005

View PostTinCup, on 09 noiembrie 2012 - 09:40, said:

Nu sunt expert in asta, dar cred ca problema poate fi rezolvata foarte usor folosind fisiere .htaccess .. cauta putin pe google niste exemple, nu e foarte complicat

.htaccess ajuta in sensul de a pune o parola etc.(din cate stiu si eu evident)
De fapt pe mine m-ar interesa o aplicatie care sa se conecteze la apache, sa dea denied la un anumit director si apoi sa pot da enable la o anumita pagina.

Edited by vdingo11, 09 November 2012 - 10:05.


#4
trackback

trackback

    Active Member

  • Grup: Members
  • Posts: 1,394
  • Înscris: 04.08.2011
Accesul catre fisiere il restrictionezi pe ip, din .htaccess, prin directiva "<Files>";
Exemplu:
<Files "pagina2.html">
Order Deny,Allow
Deny From All
Allow From 127.0.0.1
</Files>


Daca vrei sub forma de aplicatie  poti face eventual una care sa-ti modifice fisierul / fisierele .htaccess.

Edited by trackback, 09 November 2012 - 10:37.


#5
mishpowerpuff

mishpowerpuff

    Member

  • Grup: Members
  • Posts: 324
  • Înscris: 12.04.2007
Nu încerca să blochezi calculatoarele din rețea, nici nu poți. Pe server în schimb poți afișa ce vrei tu, la orice adresă.

De ce vrei să pui o pagină dar să nu o vadă nimeni? Nu mai bine nu o mai pui deloc?

Ce încerci să faci?

#6
vdingo11

vdingo11

    Senior Member

  • Grup: Senior Members
  • Posts: 4,273
  • Înscris: 24.08.2005

View Postmishpowerpuff, on 10 noiembrie 2012 - 00:17, said:

Nu încerca să blochezi calculatoarele din rețea, nici nu poți. Pe server în schimb poți afișa ce vrei tu, la orice adresă.

De ce vrei să pui o pagină dar să nu o vadă nimeni? Nu mai bine nu o mai pui deloc?

Ce încerci să faci?

Pe acel server se afla niste materiale educationale care sunt accesate de elevi pe statii. Daca nu fac doar un fisier html activ la un moment dat,
unul acceseaza alta pagina si pana stau sa convig pe fiecare in parte sa tina pasul cu restul trece ora.
De aceea doresc sa pot face in asa fel incat doar o director/pagina sa fie activ(a) la un moment dat si atunci totul va fi ok.
Cred ca este un pic ciudat ce doresc eu, dar incercarea moarte nu are.

#7
mishpowerpuff

mishpowerpuff

    Member

  • Grup: Members
  • Posts: 324
  • Înscris: 12.04.2007
E foarte firesc ce vrei tu, acum că ai explicat ce vrei.

Faci o singură adresă, http://server/practica, iar la adresa aia apare ce alegi tu la fiecare moment. Le faci tu refresh când vrei (cu socket html5) sau chiar (mai muțin elegant) cu javascript (refresh la 5 secunde, nu cred ca omoară intranetul). Pot merge înapoi dacă vrei să îi lași dar nu pot merge înainte.

Acum în momentul ăsta nu am timp să îți fac eu, dar întreabă-mă ce nu știi aici sau cu PM dacă vrei să faci tu.
Practic sunt câteva rânduri de cod, care știu care este pagina curentă și afișează ce cere utilizatorul doar dacă nu vrea să o ia înainte, altfel afișează ultima pagină.

#8
vdingo11

vdingo11

    Senior Member

  • Grup: Senior Members
  • Posts: 4,273
  • Înscris: 24.08.2005

View Postmishpowerpuff, on 12 noiembrie 2012 - 11:52, said:

Faci o singură adresă, http://server/practica, iar la adresa aia apare ce alegi tu la fiecare moment.
Adica voi copia in acel director doar acea componenta?
Sincer nu ma pricep la partea aceasta cu programarea si in plus materialele sunt accesate de profesori care predau diferite discipline. Ar trebui sa fie ceva usor de utilizat de o persoana de pe un calculator din retea ca sa nu lucreze direct de pe server si sa faca "prostii" pe acolo.

Daca vei avea timpul si dispozitia necesare si nu este foarte complicat poate postezi ceva cod. Poate va ajuta si pe altii.

Multumesc mult de tot pentru sfaturi si sugestii.

Edited by vdingo11, 12 November 2012 - 13:31.


#9
mishpowerpuff

mishpowerpuff

    Member

  • Grup: Members
  • Posts: 324
  • Înscris: 12.04.2007
Înțeleg că nu scrii tu cod.
Eu îți fac cu plăcere, și gratuit dacă spui că este pentru educație.
Dar eu am o problemă cu timpul și de aceea, dacă găsești un elev/student căruia îi place să se joace cu instrucțiunile uite ce trebuie să facă:

1. Pune într-un loc materialele, sistematizate cumva ca să le poți folosi ușor, de exemplu curs1/pagina1.html, curs1/pagina2.html ..., curs2/pagina1.html etc.
2. Fă un formular din care profesorul să aleagă cursul / pagina => pe server tine minte asta
3. Pentru cererile venite de la ip-urile studentilor citești de pe disc și arăți numai pagina aleasă de profesor sau paginile de dinainte din acel curs (în caz că un student vrea să revadă ceva). Este o singură sală sau se poate ca în același timp doi profesori să predea două cursuri diferite?

Am scris pe scurt, ca să înțelegi sistemul și ca să știi ce să ceri unui programator, nu ca să scrii singur codul.

Dacă îmi spui mai multe despre sistemul de acolo pot să îți fac și eu ceva.
Dacă ești din București și se poate, o oră pot să vin acolo să văd situația și chiar să rezolv (eventual dacă mai rămâne ceva de făcut să îți trimit pe mail).

#10
vdingo11

vdingo11

    Senior Member

  • Grup: Senior Members
  • Posts: 4,273
  • Înscris: 24.08.2005

View Postmishpowerpuff, on 12 noiembrie 2012 - 16:34, said:

Înțeleg că nu scrii tu cod.
Eu îți fac cu plăcere, și gratuit dacă spui că este pentru educație.
Dar eu am o problemă cu timpul și de aceea, dacă găsești un elev/student căruia îi place să se joace cu instrucțiunile uite ce trebuie să facă:

1. Pune într-un loc materialele, sistematizate cumva ca să le poți folosi ușor, de exemplu curs1/pagina1.html, curs1/pagina2.html ..., curs2/pagina1.html etc.
2. Fă un formular din care profesorul să aleagă cursul / pagina => pe server tine minte asta
3. Pentru cererile venite de la ip-urile studentilor citești de pe disc și arăți numai pagina aleasă de profesor sau paginile de dinainte din acel curs (în caz că un student vrea să revadă ceva). Este o singură sală sau se poate ca în același timp doi profesori să predea două cursuri diferite?

Am scris pe scurt, ca să înțelegi sistemul și ca să știi ce să ceri unui programator, nu ca să scrii singur codul.

Dacă îmi spui mai multe despre sistemul de acolo pot să îți fac și eu ceva.
Dacă ești din București și se poate, o oră pot să vin acolo să văd situația și chiar să rezolv (eventual dacă mai rămâne ceva de făcut să îți trimit pe mail).

In primul rand iti multumesc pentru sprijin si dorinta de a ma ajuta neconditionat.
Stiu ca totul se plateste in general, dar daca esti dispus sa ma ajuti iti pot doar multumi si scriu cateva detalii mai jos. Daca nu se poate nu este nici un fel de problema.

Nu sunt din Bucuresti si in principiu lectiile sunt accesate de un singur profesor dar se mai intampla sa fie si mai multi in acelasi timp (mai rar dar se intampla)
Serverul este de fapt un calc cu XP pe care este instalat Apache, MySQL si merge permanent.
- am un director lectii care la randul sau contine cate un director pentru discipline
- fiecare disciplina contine clasa x, clasa y, clasa z,....
- fiecare director contine lectiile pentru acea clasa: lectia1, lectia2, etc
- fiecare lectie are directoarele moment1, moment2, etc
- in directorul moment x este un fisier index.html care lanseaza lectia (pagina html, flash-ul si tot ce mai contine)

Eu pe fiecare statie am facut in fisierul hosts: ip_server server.
Elevii scriu in browser http://server/lectii si le apare lista de discipline de unde navigheaza fiecare prin structura.
Sa fac un formular html stiu si eu (stiu ca nu este mare lucru) dar nu stiu cum sa fac sa imi apara intr-o lista derulanta un director de pe server (lista disciplinelor). Dupa care la selectarea unei discipline sa apara doar lectiile de la acea clasa, apoi lectiile de la acea clasa si apoi momentul unei lectii.

#11
mishpowerpuff

mishpowerpuff

    Member

  • Grup: Members
  • Posts: 324
  • Înscris: 12.04.2007
Cu plăcere, și eu mă bucur că știi să explici ce ai și ce vrei.

Nu e numai lista de lecții, sunt mai multe de făcut acolo. Pot să-ți spun pas cu pas ce poți să faci tu dar nu ar ieși ceva cu care să ne lăudăm Posted Image.

Cel mai simplu și mai rapid pentru mine ar fi să îmi faci un .zip cu cursurile și eu să îți trimit sistemul la cheie.
Îți pun înainte pe net sistemul ca să te joci un pic cu el să vezi dacă e ce îți trebuie, apoi îmi trimiți cursurile să le import.
XP-ul e veriga slabă, te descurci să pui un debian? (nu te speria, e ca un xp care merge)
Mai ai și altceva pe acel calculator? Aveți un intranet să integrăm și cursurile?

Profesorii pot accesa lecțiile oricâți și oricând, întrebarea era dacă toți elevii văd aceeași lecție în același timp sau îi împărțim?

Vreo trei zile sunt foarte înghesuit, dar o putem rezolva în weekend dacă ești disponibil (sau vineri după amiază dacă nu ai acces în weekend la server). Pot intra remote acolo? Nu știu care sunt politicile de securitate și confidențialitate de la voi, dacă cer prea mult să îmi spui (eu încerc să fac cum îmi e mie ușor :)).

#12
vdingo11

vdingo11

    Senior Member

  • Grup: Senior Members
  • Posts: 4,273
  • Înscris: 24.08.2005

View Postmishpowerpuff, on 13 noiembrie 2012 - 18:23, said:

Cu plăcere, și eu mă bucur că știi să explici ce ai și ce vrei.

Nu e numai lista de lecții, sunt mai multe de făcut acolo. Pot să-ți spun pas cu pas ce poți să faci tu dar nu ar ieși ceva cu care să ne lăudăm Posted Image.

Cel mai simplu și mai rapid pentru mine ar fi să îmi faci un .zip cu cursurile și eu să îți trimit sistemul la cheie.
Îți pun înainte pe net sistemul ca să te joci un pic cu el să vezi dacă e ce îți trebuie, apoi îmi trimiți cursurile să le import.
XP-ul e veriga slabă, te descurci să pui un debian? (nu te speria, e ca un xp care merge)
Mai ai și altceva pe acel calculator? Aveți un intranet să integrăm și cursurile?

Profesorii pot accesa lecțiile oricâți și oricând, întrebarea era dacă toți elevii văd aceeași lecție în același timp sau îi împărțim?

Vreo trei zile sunt foarte înghesuit, dar o putem rezolva în weekend dacă ești disponibil (sau vineri după amiază dacă nu ai acces în weekend la server). Pot intra remote acolo? Nu știu care sunt politicile de securitate și confidențialitate de la voi, dacă cer prea mult să îmi spui (eu încerc să fac cum îmi e mie ușor Posted Image).
Deja mi se pare destul de complex acest lucru.
Sa iti trimit cursurile nu am cum ca sunt destul de mari, si sa te chinui sa dezvolti o aplicatie dupa care sa importi cursurile din punctul meu de vedere nu are sens, deoarece poate voi mai adauga/sterge altele si nu pot deranja permanent.
Trebuie sa fie ceva pe care eu sa o pot modifica ulterior usor.
Nici sa inlocuiesc acel XP cu alt SO nu este posibil. De bine de rau Windows-ul il stim destul de binisor. Nu are sens sa ma complic.
Accesul remote la server nu se poate deoarece s-a ocupat alta persoana de instalarea lui si nu ma bag peste.
Am atasat un exemplu simplu cu o lista de directoare.
Daca se poate face ceva ca ip-urile x1,x2,x3,..... sa poata accesa la un moment dat numai Lectii\Biologie\Clasa a IX-a\Citoplasma\Moment2 fara nimic altceva. (toate calc dintr-o sala vor vedea aceeasi componenta. Este posibil ca in alta sala elevii sa urmareasca altceva. Eu stiu exact lista de ip-uri ce trebuie restrictionata)
Ulterior cand doreste profesorul sa poata accesa doar Lectii\Biologie\Clasa a IX-a\Citoplasma\Moment1
etc.
Daca crezi ca s-ar putea face o aplicatie (php,html) pe care sa o pot si eu modifica/imbunatati ulterior este foarte bine.
Am nevoie de un produs destul de rudimentar, dupa care il pot imbunatati evident prin studiu si sfaturi.
Daca este ceva foarte complex, in vreun limbaj de programare iti multumesc foarte mult si ma opresc din pacate aici.

Attached Files


Edited by vdingo11, 14 November 2012 - 12:10.


#13
DarkAngelBv

DarkAngelBv

    === Proud owner of === ++++ Audi & Opel ++++

  • Grup: Senior Members
  • Posts: 12,747
  • Înscris: 24.03.2006
@mishpowerpuff, XP e ok pentru ce vrea @vdingo11. Nu este on pentru productie, dar pentru uz intern nu sunt atatea riscuri.

@vdingo11
Nu e mai simplu sa faci o baza de date cu toate cursurile, importate automat recursiv din directorul respectiv? Si apoi, dintr-o pagina protejata cu parola alegi care curs sa fe afisat.

#14
vdingo11

vdingo11

    Senior Member

  • Grup: Senior Members
  • Posts: 4,273
  • Înscris: 24.08.2005

View PostDarkAngelBv, on 14 noiembrie 2012 - 12:42, said:

@mishpowerpuff, XP e ok pentru ce vrea @vdingo11. Nu este on pentru productie, dar pentru uz intern nu sunt atatea riscuri.

@vdingo11
Nu e mai simplu sa faci o baza de date cu toate cursurile, importate automat recursiv din directorul respectiv? Si apoi, dintr-o pagina protejata cu parola alegi care curs sa fe afisat.
Nu se pune problema de riscuri, etc. Sunt doar niste lectii ce pot sa le faca decat sa le stearga?

Dar cum fac eu ca ip-urile x1 si x2 sa poata accesa doar pagina Lectii\Geografie\cls 5\Romania\index.html?
Teoretic imi dau seama cum se face implementarea (cred ca pot face si o interfata dupa ceva studiu) dar nu stiu cum trebuie scris codul pentru restrictionare.

Edited by vdingo11, 14 November 2012 - 13:01.


#15
DarkAngelBv

DarkAngelBv

    === Proud owner of === ++++ Audi & Opel ++++

  • Grup: Senior Members
  • Posts: 12,747
  • Înscris: 24.03.2006
faci un array cu ip-urile care au acces, apoi folosesti functia PHP in_array si vezi daca $_SERVER['REMOTE_ADDR'] este in acea lista. Daca nu este ii pui un die('Nu ai acces')

#16
mishpowerpuff

mishpowerpuff

    Member

  • Grup: Members
  • Posts: 324
  • Înscris: 12.04.2007
@vdingo11
Eu nu vreau să te complic, dimpotrivă.

În aplicație import doar ce ai acum, ca să nu le pui tu manual. După aceasta adaugi cursurile direct în aplicație, este la fel de ușor cum scrii aici pe softpedia. Le salvezi când vrei tu ca static html, cum sunt acum probabil sau mai sistematizate. Putem să nu ne mai vorbim după asta, nu depinzi de mine :).

Cât de ușor modifici după aceea depinde mai mult de tine. Eu pot să îți explic ce e acolo și să îți răspund la întrebări acum sau altă dată.
Da, ca să iasă bine și simplu trebuie făcut cu un limbaj de programare, e firesc.
Dar te asigur că nu e o problemă, și xp și word și apache tot cu limbaje de programare sunt făcute și te descurci.

Se poate și ce vrei tu, dar este mult mai simplu să le dai numai ce vrei să vadă decât să nu îi lași să vadă toate celelalte.

Asta vreau să îți dau, o aplicație de gestionare a conținutului. Pe care o poți modifica dacă vrei.
Eu lucrez cu python, care e mai curat și mai compact și se citește mai ușor.
Poți învăța python ca limbaj în trei zile, după cum scrii ești perfect capabil. Apoi vei citi despre modulele standard ca să știi ce să folosești când vrei să faci ceva. Te pot îndruma dacă vrei până te descurci singur, am mai făcut-o și știu că poți.

Pe scurt, ca să rezum: dacă trebuie repede, îți fac eu apoi îți explic sistemul și poți să ai grijă de el.
Dacă vrei să faci tu cu mâna ta ceva bine, va dura dar te susțin.
Să faci tu repede și bine nu știu cum. Am citit ce încerci să faci dar nu e foarte elegant și nu îmi dau seama acum dacă te și ajută până la capăt.
Cum vrei să procedăm?

Mai e o variantă, dar nu știu ce calculator ai: pot să îți fac o mașină virtuală, care ți-ar mânca vreo 5GiB din spațiul de pe hard disk și vreo 256MiB din RAM. E ok, adică mai rămân măcar 256MiB pentru XP?
Tu trebuie să instalezi VirtualBox de pe net, e gratuit, și să dai play la mașina virtuală așa cum dai play la un .mp3.

Zi tu cum să facem. Eu aș vrea să facem ceva bine, chiar dacă pare complicat, și după aceea să fii mulțumit în fiecare zi, decât să faci ceva barbar și după aceea să bombăni în fiecare zi :). Dar e numai decizia ta, să știi.

@DarkAngelBV
Nu de riscuri îmi este, dar nu e fiabil și sincer dacă nu mai aud niciodată de xp tot este prea devreme :).

#17
DarkAngelBv

DarkAngelBv

    === Proud owner of === ++++ Audi & Opel ++++

  • Grup: Senior Members
  • Posts: 12,747
  • Înscris: 24.03.2006
App.php
<?php
class App{
private $file_list;
function App($dir = 'Lectii'){
  $Path = dirname(__FILE__).'/'.$dir;
  $this->recursiveSearch($Path);
}

public function recursiveSearch($Path){
  $Dir = scandir($Path);
  foreach($Dir as $item){
   if($item == '.' || $item == '..') continue;
   $newPath = $Path . '/' . $item;
   if(!is_dir($newPath)){
	if(substr_count($item, '.htm') != 0){
	 $this->file_list[] = $newPath;
	}
   }
   else {
	$this->recursiveSearch($newPath);
   }
  }
}

public function getList($separator = ''){
  if(!empty($separator))
   return implode($separator, $this->file_list);
  else
   return $this->file_list;
}
}


index.php
<?php
require_once('App.php');
$App = new App();
echo $App->getList('<br>');


Iata cum listezi recursiv toate fisierele care contin .htm in nume.
Mai departe nu ramane decat sa faci un insert in baza de date o singura data si dupa ce modifici fisierul sa faci clear la baza de date si sa-l updatezi din nou. Apoi poti selecta doar id-ul paginii care vrei sa fie afisata la o anumita adresa.

#18
vdingo11

vdingo11

    Senior Member

  • Grup: Senior Members
  • Posts: 4,273
  • Înscris: 24.08.2005
Salutare.
Multumesc mishpowerpuff dar as prefera totusi in php, deoarece cu siguranta imi va folosi si mai departe.
Acum evident ca eu nu sunt in masura sa dezvolt in acest moment un astfel de proiect dar daca gasesc sprijin in voi (si din cate observ acesta este si va multumesc) cred ca voi face ceva.
Am luat si codul lui DarkAngelBv, si evident intrebarile sunt multe, dar o voi lua treptat.
1. daca eu as dori sa afisez recursiv toate fisierele htm de la adresa http://server/lectii cum modific codul. Am incercat o modificare a lui $dir = 'Lectii' cu $dir = 'http://server/lectii' dar nu este ok.
2. cum fac sa blochez pentru ip-ul x1 si x2 toate paginile cu exceptia celor din http://server/Lectii...asa5/index.htm?

Edited by vdingo11, 16 November 2012 - 10:30.


Anunturi

Chirurgia endoscopică a hipofizei Chirurgia endoscopică a hipofizei

"Standardul de aur" în chirurgia hipofizară îl reprezintă endoscopia transnazală transsfenoidală.

Echipa NeuroHope este antrenată în unul din cele mai mari centre de chirurgie a hipofizei din Europa, Spitalul Foch din Paris, centrul în care a fost introdus pentru prima dată endoscopul în chirurgia transnazală a hipofizei, de către neurochirurgul francez Guiot. Pe lângă tumorile cu origine hipofizară, prin tehnicile endoscopice transnazale pot fi abordate numeroase alte patologii neurochirurgicale.

www.neurohope.ro

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

Forumul Softpedia foloseste "cookies" pentru a imbunatati experienta utilizatorilor Accept
Pentru detalii si optiuni legate de cookies si datele personale, consultati Politica de utilizare cookies si Politica de confidentialitate