Původní (2.2)
Order allow,deny
Allow from all
se mění na (2.4)
Require all granted
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
pondělí 18. listopadu 2013
Apache přesměrování HTTP na HTTPS
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
Zdroj
http://www.cyberciti.biz/tips/howto-apache-force-https-secure-connections.html
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
Zdroj
http://www.cyberciti.biz/tips/howto-apache-force-https-secure-connections.html
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
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
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>
<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
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)
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
Vložená někam do části VirtualHost ... Na konec nezapomeňte Apache pro potvrzení změn restartovat.
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>
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-passengerDál vytvořit symbolický odkaz z adresáře /var/www
cd /var/www
ln -s /usr/share/redmine/public/ redmineKonečně vytvořit soubor s konfigurací např. /etc/apache2/conf.d/redmine.conf obsahující následující:
RailsEnv production RailsBaseURI /redmineDá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:
Soubor se soukromým klíčem vytvoříte takto
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ě
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
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
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
Soubor s uživatelskými jmény a hesly vytvoříte zadáním příkazu
a dalšího uživatele přidáte zadáním
Zdroje
Autorizace prostřednictvím .htaccess
AuthUserFile /cesta/k/vasemu/souboru/.htpasswd
AuthGroupFile /dev/null
AuthName "Soukroma autorizacni stranka"
AuthType Basic
require valid-user
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:
a to bylo třeba směřovat na nový systém Gallery 3 ve formě
Co s tím? Do nové instalace Drupal 7 je třeba do souboru .htaccess přidat takovéto pravidlo:
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.
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.
Tím se přesměruje (přepíše) URL adresa www.server.cz na kratší server.cz.
<VirtualHost *:80>
ServerName www.server.cz
RewriteEngine on
RewriteRule ^.*$ http://server.cz/ [R]
</VirtualHost>
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
Poté je potřeba restartovat server Apache
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í:
A tím nastavil velikost sdílené paměti oproti všem očekáváním na 64MB.
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_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
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:
Soubor se soukromým klíčem obsahuje na začátku
Konečně certifikát samotné certifikační autority obsahuje těch certifikátů hned několik
<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-----
-----BEGIN 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
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]
<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
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:
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ř.:
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
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:
Povolení SSL v Apache
Podpora SSL se v Apache zapíná tímto příkazem
Dá je třeba nastavit soubor /etc/apache2/sites-enabled/000-default
Kde by mohlo přibýt zhruba následující
Konečně je potřeba server Apache restartovat
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>
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
Přihlásit se k odběru:
Příspěvky (Atom)
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...
-
Stává se to málo, ale může se stát, že vaše stránky nejsou na vyhledávači Google vidět. V tomto a jiných případech můžete ručně požádat o je...
-
Aby byl ve Windows 7 numlock zapnutý už v přihlašovací obrazovce, je třeba v registru nastavit hodnotu klíče InitialKeyboardIndicators na ...
-
Dnes jsem narazil na tento graf: Vypadá pěkně, ukazuje jak je nadpoloviční většina lidí spokojená a šťastná, to se čte vždy dobře, samo...