ot slaff(20-07-2026)
reiting (12
)
[ dobre ]
[ zle ]
Variant za otpechatvane
Attachix e svoboden softuer s chiiato pomosht mozhe lesno da
dostupvate i upravliavate vashite failovete v Internet, podobno
na Dropbox, Google Drive ili
drugi uslugi za suhraniavane na failove.
V sravnenie sus sushtestvuvashtite uslugi Attachix ima slednite
predimstva:
- Dannite i tiahnata sigurnost sa pod vash kontrol.
- Mozhete lesno da go integrirate vuv vashiia biznes kato
izpolzvate sushtestvuvashtata infrastruktura. Naprimer mozhe da
izpolzvate sushtestvuvashtiia LDAP za da potvurdite dostovernostta
na daden potrebitel, da suhraniavate failovete vuv veche
sushtestvuvashtiia kompyuturen tsentur. Ili da startirate attachix ot
nai-izgodniia za vas dostavchik.
- Ne e nuzhno da instalirate dopulnitelen softuer za da
dostupvate failovete. Mozhe da izpolzvate WebDAV klient, koito e
instaliran v vsichki moderni operatsionni sistemi ili direktno ot
vashiiat brauzur.
Predstaviane
Attachix e python baziran survur, koito se razprostraniava pod
svoboden MIT litsenz. Nai-novata versiia mozhe da svalite direktno
ot git hranilishteto https://github.com/slaff/attachix. Vsushtnost
attachix e dva produkta v edno. Purviiat produkt e „vgradeniia”
Ajax/HTML5 klient koito Vi pozvoliava da dostupvate i
upravliavate vashite failove navsiakude s pomoshtta na moderen ueb
brauzur ili mobilno ustroistvo. Rabotnoto mu ime e "JSFront".
Vtoriiat produkt e visoko proizvoditelniia survur napisan na
python. Toi se otlichava s niska konsumatsiia na pamet i CPU i
mozhe da obrabotva hiliadi zaiavki ednovremenno. Koeto go pravi
podhodiasht kakto za malki i sredni organizatsii, taka i za
multi-natsionalni organizatsii koito imat hiliadi sluzhiteli.
V tazi statiia shte se govori predimno za python survura. Toi
izpolzva v osnovata si gevent.
Gevent e bibliotekata koiato
pozvoliava ednovremennata obrabotka na mnozhestvo zadachi, bez da
se upotrebiava goliamo kolichestvo pamet ili protsesorno vreme. Za
primer gevent mozhe da obrabotva 100 ednovremenni zaiavki
izpolzvaiki 1 MB pamet, dokato standartnite survuri se nuzhdaiat
ot do 10 do 50 i poveche MB pamet.
Instalatsiia
Kloniraite poslednata versiia na programniia kod na Attachix ot
github.
V tekushtiiat moment Attachix zavisi ot slednite dopulnitelni
moduli za python:
- gevent
1.x
- redis-py
- cjson
- ujson
- xml.etree
- py-sendfile
- magic
Kakto i nalichieto na sistemata za keshirane Redis.
Izpolzvaite paketniia menidzhur za vashata distributsiia za da
instalirate tezi paketi ili easy_install.
Puskane na survura v eksploatatsiia
Sled kato ste gotovi s instalatsiiata mozhe da startirate vashiia
survur za purvi put. Triabva da vleznete v pod-direktoriia server
na direktoriiata kudeto e svalen koda na attachix i ot tam da
startirate samiia survur.
cd /<path-to-attachix>/server/
python server.py
Konfiguratsiia
Konfiguratsiiata na Attachix survura e dosta guvkava i ne osobeno
trudna za razrabotchik na python. Konfiguratsiiata e razdelena na
osnovna chast koiato se namira vuv faila server/conf/server.py.
Za vseki "virtualen host” ima dopulnitelen fail s konfiguratsiia.
Failovete se namirat v server/conf/vhosts/available/.
Virtualnite hostove v Attachix sa shodni s virtualnite hostove
v populiarniia apachi ueb survur. Ot konfiguratsionniia fail na
daden virtualen host mozhe posochite koe IP, port, SSL
sertifikati i „durvo s resursi” da se izpolzvat.
Durvo s resursi
Durvoto s resursi za vseki virtualen host opredelia kakvi
resursi shte se pokazvat pod kakuv adres. Kodut po-dolu, ot faila
/conf/vhosts/available/default.py,
Definira che vsichki elementi shte mogat da se dostupvat
posredstvom
WebDAV protokola, samite danni shte se namirat v direktoriiata
posochena ot promenlivata dataFolder v server/conf/server.py i
shte ima menidzhur za zaklyuchvane na failovete(locking), menidzhur
za ogranichavane dostupa do tiah samo ot otorizirani
potrebiteli(auth), kakto i sistema za izvestiavane pri
vzaimodeistvie s dannite v posochenoto durvo(notifier).
Vidove resursi
Konfiguratsiiata na Attachix pozvoliava posochvaneto na razlichni
tipove resursi. Ako iskate da pozvolite dostupa do lokalna
direktoriia i da mozhe da menazhirate failovete v neia e nai-dobre
da izberete WebDAV resurs. Kakto v primera po-gore. Ako iskate
da dobavite resurs koito da e samostoiatelen fail, kato
favicon.ico naprimer, ili direktoriia sus statichni kartinki i
CSS failove koito shte mozhe samo da chetete bez da mozhe da
upravliavate i promeniate to mozhe da izpolzvate StaticResource.
Kodut v sledvashtiia primer
Vi pozvoliava da chetete vsichki failove ot JavaScript klienta
prez ueb brauzura si ili WebDAV klient ot /~js/ . Ako iskate da
definirate ot kude idva favicon.ico faila, to mozhe da dobavite
vuv vashata konfiguratsiia redovete po-dolu
Mozhe da dobavite i resursi, koito na praktika sa samo ogledalo
kum veche sushtestvuvashti resursi. Tova stava izpolzvaiki
ProxyResource
V primerut po-gore pri opit da otvorite putia /lbg/ informatsiiata
shte bude iziskana ot Linux-BG i shte bude pokaza ot attachix
survura siakash se namira tam.
Zashtita na dostupa do resursi
Vazhno e da mozhe da ogranichite dostupa do spodelianite resursi v
Internet. Attachix predlaga razlichni otorizatori
(Authentication Providers). V tiah mozhe da se definira kak da se
predstavi daden potrebitel pred otorizirashtite sistemi. Pri
izpolzvane na ueb prilozheniia mozhe da izpolzvate Basic
Authentication ili Digest Authentication. Vseki otorizator
dopulnitelno predostavia informatsiiata na otorizirashtata
sistema(authentication backends) za proverka. Otorizirashtata
sistema sudurzha v sebe si sushtestvenata logika neobhodima za
proverka na potrebitelsko ime i parola naprimer. Tova oznachava,
che mozhe da izpolzvate veche sushtestvuvashti takiva sistemi, kato
vashata LDAP ili PAM sistema.
Po-dolu e daden primer za izpolzvane na DigestAuthentication i
otorizirashta sistema koiato suhraniava informatsiiata na potrebiteli
kodirano vuv lokalen fail.
A sledniia kod demonstrira izpolzvaneto na PAM otorizirashta
sistema.
Dobaviane na izvestiteli
Attachix survura vi pozvoliava da izvestite razlichni vutreshni
ili vunshni sistemi sled uspeshno izpulnenie na zadachi vurhu
vashite resursi. Primerno pri dobaviane na novi failove, pri
iztrivane na stari ili pri promiana na tehnite atributi.
Nalichnite izvestiteli(notifier) se namirat v direktoriiata
server/core/notify/plugins/available/. Mozhe da dobavite kolkoto
zhelaete izvestite kum daden resurs. Edin izvestitel mozhe da
izprashta el.poshta, drug mozhe da izprashta informatsiiata kum vunshna
sistema za generirane na malki kartinki ili izvlichane na meta
danni i t.n. Vseki izvestitel mozhe da posochi ot koi HTTP metodi
se interesuva. Primerno izvestitelia na promeni(changes.py) ima
slednata definitsiia:
Vsichki posocheni po-gore nastroiki shte vi pomognat da nastroite
Attachix survura spored vashite nuzhdi ili nuzhdite na vashata
ogranizatsiia.
Dali mozhe da se podobri tova ili onova?
Attachix s proekt sus svoboden litsen i se nuzhdae ot vashata
pomosht. Razgledaite koda (https://github.com/sla
ff/attachix) i
vizhte dali mozhe da podobrite python survura ili JavaScript
klienta. Ako imate vuprosi mozhe da izpolzvate grupite
(https:/
/groups.google.com/forum/#!forum/attachix). V tozi
moment razrabochik na osnovnite komponenti e Slavei Karadzhov. No
ima oshte mnogo neshta za podobriavane i dobaviane. Primerno lipsvat
vuzmozhnosti za dvuposochna sinhronizatsiia na informatsiiata mezhdu
klientite i survura, kakto i offline rezhim na rabota, koito
pozvoliava zapisvane na promenite bez da e nuzhno da ima Internet
vruzka i da gi sinhronizira pri nalichieto na Internet.
Ako vi haresva tozi proekt i go izpolzvate uspeshno shte se
radvame da chuem za tova. Vashite gradivni predlozheniia i kritika
sa ni ot goliama polza. Izpratete gi na slaff {at} linux-
bg.org ili pishete v stranitsata na grupata.
<< | Proekt na „Linuks za bulgari“ i MTITS - skript za skanirane >>
|