Zobrazují se příspěvky se štítkemapache. Zobrazit všechny příspěvky
Zobrazují se příspěvky se štítkemapache. Zobrazit všechny příspěvky

neděle 9. srpna 2015

sobota 9. března 2013

Jak povolit zobrazování chyb PHP pomocí .htaccess

Někde v adresářové struktuře vytvořte soubor .htaccess (automaticky bude platit také pro podadresáře) a vložte do něj tento kód:

php_flag display_startup_errors on
php_flag display_errors on
php_flag html_errors on



úterý 5. února 2013

Když Firefox nepřehrává videa HTML5

Pokud přehrávání videí funguje lokálně, ale přestane fungovat v případě jejich přesunu na server, může za vše pravděpodobně Apache. Úpravou (přidáním) následujícího do souboru /etc/apache2/httpd.conf a restartováním Apache vše napravíte.

AddType video/ogg .ogv
AddType video/mp4 .mp4
AddType video/webm .webm

čtvrtek 25. října 2012

Jak na hosting 1

Taková ukázka (neříkám, že ideální) jak pracovat s parametry PHP jednotlivých domén může (nemusí) vypadat takto (převzato odjinud a poznamenáno na věčné časy).

<VirtualHost *:80>
        ServerAdmin     info@server.cz

        ServerName server.cz
        ServerAlias www.server.cz


        DocumentRoot    /var/www/xxx/www

        <Directory /var/www/xxx/www>
            Options -Indexes
            AllowOverride All
            Order deny,allow
            Allow from all
        </Directory>

        php_admin_value  open_basedir         /var/www/xxx/
        php_admin_value  session.save_path    /var/www/xxx/tmp/
        php_admin_value  error_log            /var/www/xxx/error-php.log
        php_admin_value  upload_tmp_dir       /var/www/xxx/tmp/
        php_admin_value  sendmail_path        "/usr/sbin/sendmail -t -i -f no-reply@server.cz"
        php_admin_value  upload_max_filesize  32M
        php_admin_value  max_file_uploads     20
        php_admin_value  max_execution_time   30
        php_admin_value  memory_limit         256M
        php_admin_value  post_max_size        32M
        php_admin_flag   allow_url_fopen      Off
        php_admin_flag   register_globals     Off
        php_admin_flag   display_errors       Off

        ErrorLog /var/wwwxxx/error-apache.log
        CustomLog /var/www/xxx/access.log combined
        LogLevel error
</VirtualHost>

pondělí 22. října 2012

Jak urychlit Apache

Pro urychlení webového serveru Apache můžete vyzkoušet nějaké dobroty od Google. Mezi ně patří i mod_pagespeed. Jeho stažení provedete z níže uvedeného odkazu a podobně se zde nachází i návod na jeho instalaci.

https://developers.google.com/speed/docs/mod_pagespeed/download?hl=de

pondělí 20. srpna 2012

Apache a jiný uživatel

V okamžiku kdy v Apache provozujete více virtuálních domén a zároveň chcete k souborům zde umístěným přistupovat prostřednictvím protokolu FTP s plnými právy přístupu konkrétního uživatele, zřejmě vám nezbude než použít (naistalovat)

mpm-apache2-itk

Ten funguje podobně jako klasický server Apache s tím rozdílem, že navíc umožňuje spuštění procesu Apache pod určitým uživatelem. V situaci, kdy např. PHP skripty vytvářejí určité soubory (standardně pod uživatelem www-data:www-data), budou tyto soubory vytvářeny s právy uvedeného uživatele a zároveň s nimi budete moci na přímo pracovat i prostřednictvím FTP (mazat je,upravovat, měnit, atp.).

To zařídí direktiva

<IfModule mpm_itk_module>
AssignUserId uživatel skupina
</IfModule>

Vložená někam do části VirtualHost ... Na konec nezapomeňte Apache pro potvrzení změn restartovat.

středa 4. ledna 2012

Jak zprovoznit Redmine pod Apache 2

Nejprve je potřeba naistalovat příslušnou obálku Rails pro Apache:
aptitude install libapache2-mod-passenger
Dál vytvořit symbolický odkaz z adresáře /var/www
cd /var/www
ln -s /usr/share/redmine/public/ redmine
Konečně vytvořit soubor s konfigurací např. /etc/apache2/conf.d/redmine.conf obsahující následující:
RailsEnv production
RailsBaseURI /redmine
Dál stačí restartovat Apache a Redmine najdete na adrese serveru za označením /redmine.

Jak předělat certifikát pro MS IIS k obrazu Apache

Dostal se mi do ruky certifikát s příponou .p12. Tento soubor je vytvořený pro a s pomocí Microsoft IIS, jak ovšem použít certifikát v Apache?

Soubor s certifikátem vytvoříte takto:

openssl pkcs12 -in certifikat.p12 -clcerts -nokeys -out cert.pem

Soubor se soukromým klíčem vytvoříte takto

openssl pkcs12 -in certifikat.p12 -nocerts -out key.pem

protože by nově vytvořený soubor s klíčem vyžadoval při spuštění/restartu Apache zadání zvoleného hesla, provedete jeho odstranění  následovně

openssl rsa -in key.pem -out key.pem

dál nezbývá než použít soubory key.pem a cert.pem přímo ve vaší instalaci Apache.

Zdroje informací
Moving SSL Certs from IIS to Apache

Wordpress aktualizace sítě webů

Po aktualizaci WordPressu je v případě tzv. multisite instalace dobré provést také aktualizaci sítě webů (nabídka Updates - Update Network). Ne zřídka se ovšem stává, že tato aktualizace odmítá proběhnout.

A kde že je problém? Kupodivu v nastavení /etc/hosts na počítači s intalací WordPressu. Zde je nutné úvést plné znění doménového jména počítače, tzn. na počítači majícím IP adresu např. 192.168.1.1 upravit řádek v souboru /etc/hosts takto

192.168.1.1 domena.cz

středa 12. října 2011

Jak heslem chránit přístup do adresáře v Apache

Používá se k tomu vhodně upravený soubor .htaccess a soubor obsahující uživatelská jména a hesla oprávněných uživatelů. Soubor .htaccess by přitom měl obsahovat tyto řádky

AuthUserFile /cesta/k/vasemu/souboru/.htpasswd
AuthGroupFile /dev/null
AuthName "Soukroma autorizacni stranka"
AuthType Basic
require valid-user

Soubor s uživatelskými jmény a hesly vytvoříte zadáním příkazu

htpasswd -c .htpasswd uzivatel1

a dalšího uživatele přidáte zadáním

htpasswd .htpasswd uzivatel2

Zdroje
Autorizace prostřednictvím .htaccess

čtvrtek 26. května 2011

Hrátky s Apache a přepisem URL

Popis situace byl takovýto:

V Drupalu 6 bylo možno integrovat Gallery 2 přímo do stránek, zatímco v Drupalu 7 není příslušný modul k dispozici. Konečně, také vyšlo nové prostředí Gallery 3 a tak to bylo třeba dát celé nějak dohromady.

Aby to nebylo tak snadné, na stávájícím webu je hromada odkazů směřujících někam sem:

http://web.cz/node/700?q=gallery&g2_itemId=9944

a to bylo třeba směřovat na nový systém Gallery 3 ve formě

http://galerie.web.cz/g2/map?path=g2_itemId=9944

Co s tím? Do nové instalace Drupal 7 je třeba do souboru .htaccess přidat takovéto pravidlo:

<IfModule mod_rewrite.c>
      Options +FollowSymLinks
      RewriteEngine On
      RewriteCond %{QUERY_STRING} ^q=gallery
      RewriteRule ^(.*)$ http://galerie.web.cz/g2/map?path=$1   [QSA,L,R=301]
</IfModule>

RewriteCond prohledává URL adresy a pokud najde stránku, která má v dotazu zmíněný q=gallery, pak to RewriteRule celé přehodí na tu správnou adresu.

neděle 1. května 2011

Jednoduchý přepis adres pomocí Apache

Někdy se může hodit přepsat jednu adresu na jinou a to nejlépe přímo pomocí Apache. K tomu se používá modul mod_rewrite jehož jednoduché použití může vypadat třeba takto.

<VirtualHost *:80>
  ServerName www.server.cz

  RewriteEngine on
  RewriteRule   ^.*$  http://server.cz/  [R]
</VirtualHost>

Tím se přesměruje (přepíše) URL adresa www.server.cz na kratší server.cz.

pátek 29. dubna 2011

PHP APC (PHP proxy)

PHP proxy APC je takové zařízení, které cachuje provoz PHP stránek a v případě opětovného vyžádání téže stránky tak vrátí uživateli výsledek mnohem a mnohem rychleji než kdyby to probíhalo klasickou cestou (zpracováním kódu PHP, dotazem do databáze, atd.).

V Debianu se instaluje takto

aptitude install php-apc

Poté je potřeba restartovat server Apache

/etc/init.d/apache2 restart

Tím je instalace hotová a vše začíná ihned fungovat. O tom jak to funguje se dozvíte rozbalením souboru /usr/share/doc/php-apc/apc.php.gz a jeho přesunutím někam kde lze pohodlně spouštět.

Pokud budete chtít měnit některá nastavení, podívejte se do souboru /etc/php5/apache2/conf.d/apc.ini a pročtěte si dokumentaci. Je s tím trochu potíž a i když lákavě vypadadají především direktivy apc.shm_segments a apc.shm_size nemusí vždy vše fungovat tak jak má.

apc.shm_size udává velikost sdílené operační paměti (cachované paměti systému) a standardně je v Debianu 30MB (je to dáno nastavením (/proc/sys/kernel/shmmax).

apc.shm_segments udává počet segmentů (částí) o výše uvedené velikosti, standardně je jen 1. Osobně mi změna tohoto parametru nefungovala a naopak apc.shm_size fungovalo v rozporu s dokumentací. V souboru /etc/php5/apache2/conf.d/apc.ini jsem nechal následující:

extension=apc.so
apc.shm_size=64

A tím nastavil velikost sdílené paměti oproti všem očekáváním na 64MB.

čtvrtek 10. března 2011

Jak na certifikáty Apache (2)

Nejdůležitější jsou tyto řádky:

NameVirtualHost *:443

<VirtualHost *:443>
        ServerName jmeno_serveru.cz
        ServerAlias www.jmeno_serveru.cz

        DocumentRoot /var/www/
        ErrorLog /var/log/apache2/error.log
        CustomLog /var/log/apache2/access.log combined

        SSLEngine on
        SSLCertificateFile /etc/apache2/ssl/certifikat.cer
        SSLCertificateKeyFile /etc/apache2/ssl/klic.pem
        SSLCACertificateFile /etc/apache2/ssl/tcs-ca-bundle.cer

</VirtualHost>

Jak se ale pozná co je certifikát, co klíč a co certifikát certifikační autority, obzvlášť, když to může být v téměř libovolném formátu?

Odpověď: je to tam napsané!


Soubor s certifikátem má v hlavičce:
-----BEGIN CERTIFICATE-----
-----END CERTIFICATE-----

Soubor se soukromým klíčem obsahuje na začátku
-----BEGIN RSA PRIVATE KEY-----
-----END RSA PRIVATE KEY-----

Konečně certifikát samotné certifikační autority obsahuje těch certifikátů hned několik
-----BEGIN CERTIFICATE-----
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
-----END CERTIFICATE-----

středa 5. ledna 2011

Jak omezit chybové hlášky PHP pomocí souboru .htaccess

Někdy se stane, že s novou verzí PHP vyskočí chybové hlášky týkající se zastaralých (deprecated) funkcí nebo různá upozornění (warning) z toho vyplývající.  V tomto a jiných případech můžete redukovat chybová hlášení zobrazovaná serverem přidáním obyčejného souboru .htaccess do kořenového adresáře webu. Soubor by měl obsahovat direktivu

php_flag display_errors off

středa 24. listopadu 2010

Apache x public_html x PHP

Pokud se vám stane, že server Apache odmítá interpretovat PHP kód v domovských adresářích uživatelů (místo přeložení souboru dojde k jeho stažení), pak se podívejte do souboru /etc/apache2/mods-enabled/php5.conf a zakomentujte řádky:

   <IfModule mod_userdir.c>
       <Directory /home/*/public_html>
           php_admin_value engine Off
       </Directory>
   </IfModule>


Je to taková fičůrka, která vás jistě rozmrzí. ;-)

Čeština v MySQL

přidat do /etc/mysql/my.cnf do bloku [mysqld]

default-character-set = utf8  
default-collation = utf8_czech_ci

neděle 31. října 2010

Pár chyb serveru Apache

Virtuální jména (NameVirtualHost) 

NameVirtualHost je direktiva Apache, která vám zajistí, aby používání pěkných jmen stránek přímo na vašem serveru. Jinými slovy, např. místo http://server.cz/moodle bude vaše adresa http://moodle.server.cz atp. K tomu potřebujete nejprve nastavit správně DNS a také nastavit správně server Apache.

Virtuální jména se zapínají direktivou
NameVirtualHost *:80
NameVirtualHost *:443

přímo v souboru /etc/apache2/sites-enabled/000-default. Abych byl přesnější, do tohoto souboru uvádějte pouze druhý výše uvedený řádek (virtuální jména na portu 443/HTTPS). Na portu 80 jsou již zapnutá v souboru /etc/apache2/ports.conf.

Proto pokud se setkáte s chybovou hláškou Apache:
NameVirtualHost *:80 has no VirtualHosts

Zatímco port 443 mlčí, bude chyba zřejmě ve vícenásobném zapnutí (vložení) direktivy NameVirtualHost *:80 a řešením je jednu z nich smazat.

Jak se jmenuji?
Další oblíbenou chybou při startu Apache může být problém s rozlišením jména serveru.

apache2: Could not reliably determine the server's fully qualified domain name, using IP_ADRESA for ServerName

Řešením je správné nastavení doménového jména serveru v souboru /etc/hosts. Řádek s IP adresou vašeho serveru by měl jako první obsahovat jeho plné doménové jméno, např.:

192.168.0.1    server.cz

sobota 30. října 2010

Generování certifikátu pro Apache

Vytvoření zabezpečeného spojení (HTTPS) se serverem Apache je tak snadné! (Jen si to stále nemůžu zapamatovat...)

Vytvoření certifikátu SSL

mkdir /etc/apache2/ssl
openssl req $@ -new -x509 -days 3650 -nodes -out /etc/apache2/ssl/apache.pem -keyout /etc/apache2/ssl/apache.pem

platnost takto vytvořeného certifikátu bude celých 3650 dní (zhruba 10 let ;-)). Pokud by certifikát někdo zcizil, byl by to docela průšvih a tak je dobré mu nastavit ta správná práva:

chmod 600 /etc/apache2/ssl/apache.pem

Povolení SSL v Apache

Podpora SSL se v Apache zapíná tímto příkazem

a2enmod ssl

Dá je třeba nastavit soubor /etc/apache2/sites-enabled/000-default

Kde by mohlo přibýt zhruba následující

NameVirtualHost *:443

<VirtualHost *:443>
        ServerName jmeno_serveru.cz
        ServerAlias www.jmeno_serveru.cz

        DocumentRoot /var/www/
        ErrorLog /var/log/apache2/error.log
        CustomLog /var/log/apache2/access.log combined

        SSLEngine on
        SSLCertificateFile /etc/apache2/ssl/apache.pem
</VirtualHost>

Konečně je potřeba server Apache restartovat

sudo /etc/init.d/apache2 restart

Jak opravit IMAP v Thunderbirdu po aktualizaci NOD32

Po aktualizaci NOD32 se může stát, že v Thunderbiru přestane fungovat připojení pomocí protokolu IMAP. Postup k vyřešení: Restartovat počíta...