abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 18:00 | IT novinky

    DuckDuckGo AI Chat umožňuje "pokecat si" s GPT-3.5 Turbo od OpenAI nebo Claude 1.2 Instant od Anthropic. Bez vytváření účtu. Všechny chaty jsou soukromé. DuckDuckGo je neukládá ani nepoužívá k trénování modelů umělé inteligence.

    Ladislav Hagara | Komentářů: 0
    dnes 14:22 | IT novinky

    VASA-1, výzkumný projekt Microsoftu. Na vstupu stačí jediná fotka a zvukový záznam. Na výstupu je dokonalá mluvící nebo zpívající hlava. Prý si technologii nechá jenom pro sebe. Žádné demo, API nebo placená služba. Zatím.

    Ladislav Hagara | Komentářů: 2
    dnes 04:44 | Nová verze

    Nová čísla časopisů od nakladatelství Raspberry Pi: MagPi 140 (pdf) a HackSpace 77 (pdf).

    Ladislav Hagara | Komentářů: 0
    dnes 01:00 | Nová verze

    ESPHome, tj. open source systém umožňující nastavovat zařízení s čipy ESP (i dalšími) pomocí konfiguračních souborů a připojit je do domácí automatizace, například do Home Assistantu, byl vydán ve verzi 2024.4.0.

    Ladislav Hagara | Komentářů: 0
    včera 22:11 | IT novinky Ladislav Hagara | Komentářů: 0
    včera 20:55 | Nová verze

    Neziskové průmyslové konsorcium Khronos Group vydalo verzi 1.1 specifikace OpenXR (Wikipedie), tj. standardu specifikujícího přístup k platformám a zařízením pro XR, tj. platformám a zařízením pro AR (rozšířenou realitu) a VR (virtuální realitu). Do základu se z rozšíření dostalo XR_EXT_local_floor. Společnost Collabora implementuje novou verzi specifikace do platformy Monado, tj. open source implementace OpenXR.

    Ladislav Hagara | Komentářů: 2
    včera 17:22 | Nová verze

    Byla vydána nová verze 0.38.0 multimediálního přehrávače mpv (Wikipedie) vycházejícího z přehrávačů MPlayer a mplayer2. Přehled novinek, změn a oprav na GitHubu. Požadován je FFmpeg 4.4 nebo novější a také libplacebo 6.338.2 nebo novější.

    Ladislav Hagara | Komentářů: 13
    včera 17:11 | Nová verze

    ClamAV (Wikipedie), tj. multiplatformní antivirový engine s otevřeným zdrojovým kódem pro detekci trojských koní, virů, malwaru a dalších škodlivých hrozeb, byl vydán ve verzích 1.3.1, 1.2.3 a 1.0.6. Ve verzi 1.3.1 je mimo jiné řešena bezpečnostní chyba CVE-2024-20380.

    Ladislav Hagara | Komentářů: 2
    včera 12:11 | IT novinky

    Digitální a informační agentura (DIA) oznámila (PDF, X a Facebook), že mobilní aplikace Portál občana je ode dneška oficiálně venku.

    Ladislav Hagara | Komentářů: 10
    včera 05:11 | Komunita

    #HACKUJBRNO 2024, byly zveřejněny výsledky a výstupy hackathonu města Brna nad otevřenými městskými daty, který se konal 13. a 14. dubna 2024.

    Ladislav Hagara | Komentářů: 2
    KDE Plasma 6
     (68%)
     (10%)
     (2%)
     (20%)
    Celkem 564 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    Dotaz: Spouštění PHP pod jeho UID:GID - Apache

    14.1.2007 19:23 al-Quaknaa | skóre: 13 | blog: al_quaknaa
    Spouštění PHP pod jeho UID:GID - Apache
    Přečteno: 2724×

    Ahoj,
    Potřeboval bych poradit s konfigurací Apache. Rád bych, aby PHP běžely pod svým UID a GID a zároveň chci používat dynamické virtuální hostitele (mass hosting), tedy situace, kdy nemám pro každého hostitele záznam <VirtualHost> a nemůžu to tedy jednoduše udělat pomocí Apache MPM-Peruser (a direktivy ServerEnvironment). Jediné funkční nastevní bylo pomocí suPHP, které ale funguje přes CGI a má proti mod_php asi desetinásobně menší výkon. FastCGI s suEXEC mě taky napadlo, ale nenašel jsem přesně návod, jak udělat, aby si wrapper php sám zjistil, pod jakým UID:GID má běžet a FastCGI PHP bylo stejně asi dvakrát tak pomalé než mod_php. Moje otázka tedy zní: lze nějak zkloubit mass hosting s MPM-Peruser? Tedy něco jako ServerEnvironment %0 %0? Mě se to nepodařilo, ale konfiguraci Apache nerozumím natolik, abych mohl říct, že to není možné. Pokud je tu někdo, kdo Apachi opravdu rozumí a ví, že to možné není, ať to prosím napíše - nebudu už aspoň muset hldat. Ještě poznámka na závěr - pokud tuto možnost přináší Apache 2.2 (ačkoliv v New Features jsem nic takového nenašel), není to problém. Kvůli tomuhle bych ho klidně nasadil, i když je teprve ve vývoji. Stejně tak, pokud víte o jiném webserveru, který by si uměl poradit s PHP (třeba lighttpd přes FastCGI) a tohle uměl, taky mě to určitě zajímá. Díky všem, už jsem nad tím strávil asi tři dny a rád bych znal závěrečnou odpověď :)

    Odpovědi

    14.1.2007 19:50 Zdvori | skóre: 9
    Rozbalit Rozbalit vše Re: Spouštění PHP pod jeho UID:GID - Apache
    Osobně používam FastCGI a SuPHP a ono desetinásobné snížení výkonu nepociťuji. Můžete doložit nějkým měřením. Osobně by mě tato problematika také zajímala.

    Já osobně jiné řešení nenašel.

    PS:Výhodu v SuPHP vidím také v možném dodatečném zabezpečení které nabízí...

    14.1.2007 19:57 al-Quaknaa | skóre: 13 | blog: al_quaknaa
    Rozbalit Rozbalit vše Re: Spouštění PHP pod jeho UID:GID - Apache

    FastCGI a suPHP? Tohle nastavení jsem nidke neviděl a podle toho, co jsem našel na mailing listu suPHP to prý ani nejde. Mohl byste prosím zveřejnit svá nastavení? Jinak to měřením můžu doložit, akorát se mi ho nechce dělat znova :D Použil jsem ab2 benchmark a jednoduchou phpinfo(); stránku, testoval jsem na 1000 požadavků, maximálně vedle sebe jich běželo deset (ab2 -n 1000 -c 10 [adresa_serveru]) a mod_PHP dosahoval asi 200 požadavků/s, PHP/FastCGI asi 130 požadavků/s a suPHP asi 20 požadavků/s. Pokud byste z těch měření dokázal vyčíst něco víc, kdybych je postnul celá, klidně to udělám, ale vážně tam nic zázračného nebylo. Server mám v 100Mbit LAN a největší rychlost (s mod_php) byla asi 8000kB/s, takže sítí to myslím nebude.

    Díky za odpověď :)

    14.1.2007 20:16 Zdvori | skóre: 9
    Rozbalit Rozbalit vše Re: Spouštění PHP pod jeho UID:GID - Apache
    Nastavení jsem prakticky neměnil a v phpInfo mám:

    Server API CGI/FastCGI

    Tak jen doufám, že to není jen moje chyba při odečítání hodnoty.

    www-apache/mod_suphp-0.6.2 USE="checkpath mode-owner -mode-force -mode-paranoid"

    Můžete poslat script na měření? ...rád bych se ujistil zda opravdu běží FastCGI.

    14.1.2007 20:47 al-Quaknaa | skóre: 13 | blog: al_quaknaa
    Rozbalit Rozbalit vše Re: Spouštění PHP pod jeho UID:GID - Apache

    Prosím tykat :) Pokud máte nainstalovaný Apache-2*, tak ten benchmark máte, je to binárka ab2. A to Server API - říká jenom to, že PHP bylo zkompilováno s podporou CGI i FCGI (můžete se ujistit tím, že spustíte php-cgi -v - vypíše, že má podporu pro oboje), ne že ho i využívá, tzn. že vám běží jenom jako CGI. Mimochodem, vzhledem k tomu, že máte Gentoo (já též), tak se můžete sám ujistit, že mod_suphp nemá mod_fcgid ani fcgi jako závislost, takže těžko může takto běžet (vzhledem k tomu, že je asi nemáte ani nainstalované, jak předpokládám).

    14.1.2007 22:33 Zdvori | skóre: 9
    Rozbalit Rozbalit vše Re: Spouštění PHP pod jeho UID:GID - Apache
    Když tykat tak oboustraně :)

    Až bude čas pokusně přepsat konfiguraci serveru tak to otestuju.

    Existuje ještě nějaké řešení pro:

    Spouštění scriptů pod vlastníkem
    Možnost současného běhu php4 a php5
    Ukládání logů pro každou doménu zvlášť
    Základní zabezpečení v porovnávání vlastníků souborů a document root atd...

    Jediné co jsem našel, že splňuje požadavky je kombinace VirtualHost a SuPHP

    15.1.2007 09:56 al-Quaknaa | skóre: 13 | blog: al_quaknaa
    Rozbalit Rozbalit vše Re: Spouštění PHP pod jeho UID:GID - Apache

    Možnost současného běhu PHP4 a PHP5 - je hezký návod na stránkách Gentoo. Gentoo pro tohle má přímo USE flag concurrentmodphp (umožňuje provozovat obě verze PHP jako mod_php), ten zatím ještě nefunguje dokonale, ale s troškou pomoci na fórech by to šlo. Jinak určitě funkční řešení a asi nejrychlejší (kromě concurrentmodphp) je jedna verze PHP jako mod_php a druhá jako FastCGI.

    Další okomentuju (a ano, je to proveditelné a vzhledem k tomu, že to budu dávat na svůj server. tak to doplním i do článku v blogu), teď běžím do hodiny :)

    15.1.2007 10:26 Zdvori | skóre: 9
    Rozbalit Rozbalit vše Re: Spouštění PHP pod jeho UID:GID - Apache
    Tak moje měření:

    phpinfo() - 1,5GB RAM; Pentium M 1,86GHz; PHP5-mod_php = 240.60 [#/sec]

    phpinfo() - 4GB RAM; Core2Duo 2,13Ghz; PHP-suPHP+CGI = 9.67 [#/sec]

    Smutné :-(

    15.1.2007 13:41 al-Quaknaa | skóre: 13 | blog: al_quaknaa
    Rozbalit Rozbalit vše Re: Spouštění PHP pod jeho UID:GID - Apache

    Velmi smutné. Vpodstatě celý důvod, proč se tady an to ptám. Jen mě mrzí, že pořád nikdo neodpovídá.

    15.1.2007 17:11 Zdvori | skóre: 9
    Rozbalit Rozbalit vše Re: Spouštění PHP pod jeho UID:GID - Apache
    Bohuzel pochybuji jestli to ma jine reseni. To co chces asi jentak nepujde. Dynamic Virtual host jsem kdysi pouzival, ale po zavedeni pozadavku na SSL/domena, ukladani logu ke kazde domene zvlast a vlastni nastaveni php pro kazdou domenu toto reseni prestalo zvladat. Pouzil jsem tedy klasicky virtual host, kde se da vse jednoduseji nastavit. Podobne tema jsem resil v diskuzi jiz kdysi a nenaslo se moc lidi kteri by odpovedeli a neco vedeli... :-(
    15.1.2007 17:20 al-Quaknaa | skóre: 13 | blog: al_quaknaa
    Rozbalit Rozbalit vše Re: Spouštění PHP pod jeho UID:GID - Apache

    Takže - s těmi logy. Pokud nepotřebujete nic moc co se týče těch dynamic virtual hostů nastavovat, můžete použít řešení založené na mod_rewrite. Našel jsem jeden návod kompletně včetně těch logů - ono to dělá jeden log a potom ho to vždycky (pomocí cronu, třeba o půlnoci) rozseká na jednotlivé logy na [nazevserveru]-YYYY-DD-MM.log a uloží do adresáře toho daného hostu. Jestli je to to, co hledáte, tak tady to je. Akorát si projděte celý ten thread, jsou tam i doplňující informace o tom, jak na to s Apachem 2.0, ten úvodní post se týká Apache 1.3. CKaždopádně to jde i nějak udělat pro mas hosting s VirtualHosty, akorát jsem nenašel přesný návod (ale myslím, že by se akorát lehce pozměnil ten rozsekávací skript). A vlastní nastavení PHP - to by taky mělo jít pomocí nějakého toho regexpu, pokud se vám ovšem nejedná o ty uživatele :(

    15.1.2007 17:38 Zdvori | skóre: 9
    Rozbalit Rozbalit vše Re: Spouštění PHP pod jeho UID:GID - Apache
    Rikal jsem tykat :-). Rozsekat logy by samozdrejme nebyl problem, ale uz to ma nejake spozdeni. Takhle maj uzivatele na FTP svoje realtime logy. O rozsekani se taky docela dobre do dnu postara Awstats a mam to rovnou i se statistikou :-). O ty uzivatele se mi jedna. S tim, ze bych mel VirtualHost pro kazdou domenu jsem se smiril, ma to mnohem vice moznosti. DynamicHost jsem pouzival sice s uspechem nekolik let, ale nyni je nevyhovujici. Proc se ty branis klasickym virtualHostum?
    15.1.2007 17:45 al-Quaknaa | skóre: 13 | blog: al_quaknaa
    Rozbalit Rozbalit vše Re: Spouštění PHP pod jeho UID:GID - Apache

    Nejsem programátor a budu si muset napsat nějaké skripty na generování konfiguráků. A jsem líný :D a navíc - dokud se na ten vhost nikdo nepodívá, Apache o něm neví ==> teoreticky by to mělo být výkonější. Ale co už. RAm se dá dokoupit ... Už se s tím smiřuju. I tak díky za odpověď :)

    14.1.2007 20:21 azurIt | skóre: 34 | blog: zatial_bez_mena
    Rozbalit Rozbalit vše Re: Spouštění PHP pod jeho UID:GID - Apache
    "..kdy nemám pro každého hostitele záznam <VirtualHost>.."

    to uz preco ? je tam nejaky problem ? ako to mas teda spravene ?
    14.1.2007 20:41 al-Quaknaa | skóre: 13 | blog: al_quaknaa
    Rozbalit Rozbalit vše Re: Spouštění PHP pod jeho UID:GID - Apache

    Je to dynamický VirtualHost, tzn. že Apache se kouká do nadefinovaného adresáře a všechny podadresáře interpretuje jako VHosty. Celé se to dělá pomocí mod_vhost_alias. Asi takhle:

    NameVirtualHost *:80
      <VirtualHost *:80>
        <Directory "/storage/www/hosts">
        ---nic speciálního---
        </Directory>
        <IfModule mod_vhost_alias.c>
    ---teď ta důležitá část. %0 je požadovaný název (třeba www.nazevwebu.cz). Jsou i další možnosti, více zde---
          VirtualDocumentRoot /storage/www/hosts/%0.0
          VirtualScriptAlias /storage/www/hosts/%0.0/cgi
    
    
    
    Doufám, že je to srozumitelné.

    5.4.2007 09:38 al-Quaknaa | skóre: 13 | blog: al_quaknaa
    Rozbalit Rozbalit vše Re: Spouštění PHP pod jeho UID:GID - Apache

    Tak už jsem to vyřešil. Doufám, že to pomůže. jsou tam i odkazy na mod_vhs, na jehož stránkách jsou zase návody, jak ho rozjet s oddělenými logy. Zkrátka když si pročtet ten článek + linkovaný materiál, myslím, že vám to přinese užitečné informace.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.