Nem tudsz egykét cimet ahol példa programok vannak fent, és lehetne belölük tanulni?
Nagyon örülnék ilyeneknek, mert eléggé kezdő vagyok még ebben és sokat segitene.
A feltöltést php-n keresztül ftp-vel gondoltam, most írtam a rendszergazdának ez ügyben, mert nagyon sok beállítás nincs beállítva, igy nem megy sem az ft (php-ből), sem a LDAP.
A letöltés egy egyszerű http-s letöltés lenne a html oldaon lenne a link és csak rá kell klikkelni és már töltheti is.
A feltöltés ezek szerint célszerűen vagy ftp-vel, vagy http-vel történhetne.
Az ftp-s feltöltés régebbi, jobban bevált, mindenki használhatja a saját kliensét, stb. Biztos van olyan ftp szerver, amelyik hajlandó PAM-ból authentikálni, valószínűleg nem is túl bonyolult beállítani (sőt, a modularitás miatt szinte biztos, hogy igazából csak a PAM-ot kell majd átkonfigurálni).
A http-s feltöltés újabb, de gyakorlatilag minden böngésző ismeri, és mivel BASE64-kódolva küldi az adatokat, ezért a hatékonysága/adatsebessége 75%-os az FTP-hez képest. Ugyanakkor előnye, hogy a feltöltést meg tudod oldani PHP-ból, nem kell illeszteni az ftp szervert; viszont a letöltés folytathatósága érdekében vagy megfelelően konfigurált http szerver kell, vagy dönthetsz úgy, hogy a letöltéshez még mindig ftp szervert veszel igénybe - ha a letöltés mindenki számára nyilvános, akkor ez gyakorlatilag alig jelent konfigurációt, viszont előnyőket nyújt.
Mindenképpen javaslom, hogy a regisztrált userek legyenek külön adatbázisban.
A bejelentkezés ahhoz kell, mert csinálok a főiskola számára egy oldalt. Az oldal tartalmazna, egy regisztrációt, mert csak regisztrált felhasználok tudnának feltölteni a sitera, mások csak le. Az oldal tartalmazna minden olyan anyagot(jegyzetek, puskák stb.) amire a hallgatoknak szükségük lenne.
És azt akarom megoldani, hogy csak a főikola hallgató tudjanak feltölteni, illetve forumban beszélgetni. Ilyesmi. De mindenkinek legyen lehetősége letölteni.
Hmm, szerintem nagy biztonsági luk, ha a webszerver usere olvasni tudja a /etc/shadow-t - ezt tehát semmiképpen sem javaslom.
Továbbá különböző rendszerek elméletben akár más és más hash függvényt alkalmazhatnak a jelszavak tárolására, tehát még ha hozzá is férsz a /etc/shadow-hoz, akkor sem biztos, hogy a megfelelő függvényt ismered, és sikeresen tudsz jelszót ellenőrizni.
Ehelyett javaslom, hogy más módon, például egy LDAP szerverben tároljátok azokat a usereket, akiket weben keresztül kell authentikálni, és ezek a userek ne is létezzenek normál userként a rendszerben.
Az authentikáció egységesítésére és modularizálására született meg a PAM alrendszer (RedHat rendszereken ez a rendszer az alapértelmezés), amivel passwd-hez és shadow-hoz hasonló file-okból, LDAP szerverekből, adatbázisokból, stb. lehet authentikációt végezni, valamint a rendszer különböző részei, szolgáltatásai más és más authentikációs módszert vehetnek igénybe.
Ezzel igen könnyű volt például olyan tömeges levelezőrendszert összeraknom, ahol 'rendes user'-ből volt egy vagy kettő, míg a POP3 szerver a sokezer levelező usert egy LDAP szerverből authentikálta.
Tudsz egy kicsit többet mondani arról, hogy mihez kell ez az egész?
Köszi szépen. Megnézem, remélem menni fog. Linux alatt milyen függvénnyel lehet ellenörizni a jelszót - vagyis mi kell a scriptbe, addig tudom, hogy a passwd tárolja a felhasználokat a shadows pedig a jelszavakat is hozzá, de mivel tudom összehasonlitani?
Ha a passwd file-bol akarsz auth-olni akkor legegyszerubb ha irsz 1 kis perl script-et mondjuk ami-nek atadod php-bol a parameter es az ellenorzi, es visszater vmilyen ertekkel, hogy jo-e vagy nem. Ha ldap-bol jo az auth akkor ldap fugvenyek ott vannak, www.php.net/ldap .
Ftp-zni meg ott vannak az ftp fugvenyek, az hogy adott user/pasword-el ftp-zz ahhoz kell tudnod a jelszot is. Namost ha sikerult az azonositoas a fenti modszerekkel akkor mar a jelszot is tudod, igy gondolom nem okoz problemat.
Sziasztok!
Lenne egy kérdésem. Linux alatt apache és php.
Az a kérdés, hogy hogyan lehet lekérdezni a rendzser alatt lévő felhasználónév és a jelszó helyességét.
A rendszeren van rengeteg felhasználó és szeretném őket hitelesíteni, de ehhez be kell jelentkezniük.Hogyan megoldható ez? Illetve, hogy lehet php-én keresztül adott felhasználónévvel ftp-zni?
egyszeru az mit jelent es milyen op rendszer alatt? Linux/Unix alatt egyszeru, exec("ls -lR dir | grep parameter | wc -l",$sorok);
De hasznalhatod az dir fgv-eket is opendir, readdir, es rekurziv fgv-t irva barmekkora melysegig elmehetsz.
nemhiszem, bar teny hogy a leghatekonyabb es koltseghatekony megoldasd valasztanak ertelem szerint. Egyreszt windows-os szerverre nem lehetne semmit se pakolni tehat minek asp, egyertelmu a freebsd, masreszt olyan ratyiszar nyelvet mint az asp ritkan latott az ember (tudom az asp nem nyelv hanem lehet vb de akar js style is, ettol fuggetlenul osszevontam, meg inkabb a nyelv syntax-tol fuggetlen dolgokra ertettem). Es az hogy nem akarnak fizetni windozert az az elsodleges, mivel az is a fo cel hogy ne legyen draga, lehetoleg minnel olcsobban lehessen kihozni a fejlesztoi cuccokat. Tehat mas indok mar nem is kellett, sztem egyertelmu.
Apache-bol vedd ki azt a hulyeseget. Az a dll php-nak kell ha akarod hasznalni nem az apache-nak.
Az ini-det nezd vegig meg a manualt mert vszuni windoz alatt is a / jelet szereti nem a \-t a path-ba.
bocs, folytatom az előző hozzászólást:
Az apachba beirtam a kov sort:
LoadModule php4_module "c:\PHP\extensions\php_interbase.dll"
azt irja ki, hogy nem találja a dll-t
ja es dl() fuggvénnyel sem sikerult ezt a dll-t beincludolni.
itt meg azt a hibat kapom, hogy nincs mega php4 konyvtár, de nem tudom honnan veszi, hogy a php4-et hasznalom, mert mindehol a php konyvtar van megadva.
Hosszas kutatomunka után sem talaltam olyan valaszt az alabbi kerdesre, ami megoldast adott volna ra.
win XP-t hasznalom Apache2+php 4
Meg nem hasznatam kulso dll-t es ez lenne a probléma. Konkretan egy interbase adatbázuis akarok elerni.
Az alabbi dolgokat mar megprobáltam:
A c:\windows\php.ini-be beirtam a kovetkezo két sort
extension_dir = "c:\php\extensions"
és
extension=php_interbase.dll
és a biztonság kedvéért bemásoltam a windows\system32 könyvtárba a php_interbase.dll-t és a gds32.dll-t
Az apachban atirtam
Most olvastam, hogy a Yahoo is átér PHP-re. C++,ASP,Perl stb. már nem éri meg fejleszteni.
A php-től azt várják, hogy olcsóbb lesz a fejlesztés és a kerbantartás.