Jednou už jsem něco takového řešil a teď mi to článek znovu připomněl.
Má smysl skrývat zdrojový kód (php) aplikace, pokud je koncipována jako open-source a soubor s citlivými informacemi (config) je nepřístupný?
Vždy jsem se snažil, aby php (zkomilované či nezkompilované) bylo nepřístupné, to jsem ještě nepoužíval objektové programování, tak hrozilo, že odkrytím struktury souborů se najde něco, co půjde spustit a provede to něco nežádoucího. Nicméně, když je celá aplikace objektová a zdroják je stejně na githubu, tak to asi nemá smysl ne?
Jasně, že zdroják lze zveřejnit, dokonce je to často i žádoucí nebo vyžadované (např. Affero GPL licencovaný software), ale problém je v tom, že ty weby dělají matláci, kteří to nemají pod kontrolou a nemají ani představu, co za soubory se tam nachází a které z nich je možno zveřejnit a které je naopak potřeba střežit jako oko v hlavě (typicky konfigurák s hesly nebo soukromé klíče). Takže ve výsledku se snaží utajit všechno, ale mizerně, takže dochází k únikům.
Když dáte hackerům zdroják vaší aplikace, usnadníte jim hledání děr.
Stáhnou si zdroják, nainstalují to a budou se v tom vrtat na localu tak dlouho, dokud něco nenajdou. Pak vše promyslí a připraví. Pak teprve zaútočí. Vše potřebné už ví. Půjdou najisto. A budou tiší.
Tohle myslím nechcete.
Když někdo použije nějaké CMS které je kompletně na githubu, tak to má ve výsledku jedno, jestli si útočník zobrazí zdroj z webu nebo klikne na "fork me on github" a podívá se na ten zdroják tam, z githubu to má ve výsledku ještě navíc přehlednější.
Samozřejmě mohou vzniknout chyby, které při použití CMS udělá uživatel a které na githubu útočník nenajde, ale ty CMS jsou většinou stejně jen klikačka a vyplňování v editoru (jako TinyMCE), a počet úprav uživatelem 0, nebo jen hodně málo.