GNU/Linux >> Znalost Linux >  >> Linux

Linux .htaccess tipy a triky

Tento článek používá následující technologie:

  • Cloudové servery Linux®, na kterých běží Apache®
  • Vyhrazené servery Linux se systémem Apache
  • Rackspace Cloud Sites

Na svých stránkách můžete provádět úpravy pomocí .htaccess Tento článek vám ukáže některé úpravy, které můžete provést.

Vyhledejte svůj soubor .htaccess

V souborových systémech UNIX® a Linux před názvy skrytých souborů tečka (například .htaccess a .htpasswd ). FileMan a mnoho aplikací File Transfer Protocol (FTP) ve výchozím nastavení nezobrazuje skryté soubory.

Způsob, jakým zobrazujete skryté soubory, včetně vašeho .htaccess závisí na programu FTP, který používáte. Tato sekce vám ukáže, jak to udělat v oblíbených FTP programech.

Změna maximální doby provádění PHP

Pokud používáte cloudové weby, musíte změnit maximální dobu provádění PHP® pro cloudový server pomocí .htaccess soubor.

V .htaccess soubor ve stejném adresáři jako spouštěcí skript, zahrňte následující řádek:

php_value max_execution_time <PHP maximum execution time>

Nahraďte PHP maximum execution time s hodnotou, kterou chcete použít jako maximální dobu provádění. Výchozí čas je 30 sekund. Po úspěšné úpravě souboru se ve vašem informačním souboru PHP zobrazí nový maximální čas spuštění.

Změnit limit paměti PHP

Pokud používáte Cloud Sites, musíte změnit limit paměti PHP pomocí .htaccess soubor.

V .htaccess soubor ve stejném adresáři jako spouštěcí skript, zahrňte následující řádek:

php_value memory_limit <megabytes>M

Nahraďte megabytes s hodnotou megabajtů, kterou chcete použít. Výchozí velikost je 128 MB. Když soubor úspěšně upravíte, ve vašem informačním souboru PHP se zobrazí limit nové paměti.

Změna maximální velikosti nahrávaného souboru PHP

Pokud používáte Cloud Sites, musíte změnit maximální velikost souboru pro nahrávání PHP pomocí .htaccess soubor.

V .htaccess soubor ve stejném adresáři jako spouštěcí skript, zahrňte následující řádek:

php_value upload_max_filesize <megabytes>M

Nahraďte megabytes s hodnotou megabajtů, kterou chcete použít. Výchozí velikost je 8 MB. Když soubor úspěšně upravíte, ve vašem informačním souboru PHP se zobrazí nová maximální velikost uploadu.

Pokud používáte WordPress® a problémy přetrvávají i po zvýšení maximální nahrávané velikosti, můžete zkusit zahrnout následující doplňková nastavení:

php_value post_max_size ?M
php_value max_execution_time 200
php_value max_input_time 200

Změnit hodnotu maximální velikosti příspěvku

Pokud používáte Cloud Sites, musíte změnit maximální velikost příspěvku pomocí .htaccess soubor.

V .htaccess soubor ve stejném adresáři jako spouštěcí skript, zahrňte následující řádek:

php_value post_max_size <megabytes>M

Nahraďte megabytes s hodnotou megabajtu, kterou chcete použít (například 16 ).

Vytvořit přesměrování 301

Přesměrování 301 je stavová zpráva protokolu HTTP (HyperText Transfer Protocol), která trvale přenáší uživatele nebo vyhledávač do adresy URL (Uniform Resource Locator), která se liší od původně požadované. Použití přesměrování 301 je efektivní způsob, jak zajistit, aby uživatelé a vyhledávače našli váš obsah.

Následující příklady jsou specifické pro PHP a fungují, pouze pokud nakonfigurujete svůj cloudový web pro PHP. Tyto příklady nefungují pro Internet InformationServices (IIS) s Active Server Pages (ASP) nebo ASP.NET.

Příklady přesměrování

Následující příklady jsou základní příklady přesměrování 301, které používají .htaccess soubor. Uložte tento soubor do složky, ze které chcete provést přesměrování.

Pokud například umístíte .htaccess soubor ve složce/www.domain.com/web/content/ (pomocí FTP), k přesměrování dojde, když návštěvník přejde ve svém prohlížeči na http://www.domain.com.

Následující tabulka ukazuje, jak provádět různé typy přesměrování přidáním kódu do souboru .htaccess soubor:

Přesměrování Příklad
Přesměrování jedné stránky Redirect 301 /pagename.php http://www.domain.com/pagename.html
Přesměrovat celý web Redirect 301 / http://www.domain.com/
Přesměrovat celý web do podsložky Redirect 301 / http://www.domain.com/subfolder/
Přesměrujte podsložku na jiný web Redirect 301 /subfolder http://www.domain.com/
Přesměrování pomocí RedirectMatch 301

Následující syntaxe přesměruje soubor s příponou .html příponu pro použití stejného názvu souboru, ale s .php místo toho rozšíření:

RedirectMatch 301 (.*)\.html$ http://www.domain.com$1.php

Můžete také provést přesměrování 301 přepsáním adresu URL ve vašem .htaccess soubor. Některé z následujících částí obsahují ukázkový kód pro provedení této úlohy.

Přesměrování ze staré domény na novou

K přesměrování ze staré domény na novou doménu použijte následující syntaxi přepisu:

RewriteEngine on
RewriteBase / 
RewriteRule (.*) http://www.newdomain.com/$1 [R=301,L]

Přesměrujte na místo, které používá subdoménu

K přesměrování do umístění, které používá subdoménu www, použijte následující syntaxi přepisu :

RewriteEngine on
RewriteBase /
RewriteCond %{HTTP_HOST} ^domain.com [NC]
RewriteRule ^(.*)$ http://www.domain.com/$1 [R=301,NC]

Přesměrujte do podadresáře umístění, které používá subdoménu

K přesměrování do podadresáře umístění, které používá subdoménu, použijte následující syntaxi přepisu:

RewriteEngine on 
RewriteBase / 
RewriteCond %{HTTP_HOST} domain.com [NC] 
RewriteRule ^(.*)$ http://www.domain.com/directory/index.html [R=301,NC]

Přesměrujte z místa, které používá subdoménu, na místo, které nepoužívá

K přesměrování z umístění, které používá subdoménu, na místo, které nepoužívá, použijte následující syntaxi přepisu:

RewriteEngine on
RewriteBase /
RewriteCond %{HTTP_HOST} ^www.domain.com [NC]
RewriteRule ^(.*)$ http://domain.com/$1 [R=301,L]

Poznámka :Pomocí nástroje Kontrola přesměrování přátelského k vyhledávačům ověřte, zda je vaše přesměrování přátelské pro vyhledávače.

Změnit výchozí znakovou sadu pro PHP

Můžete také změnit výchozí znakovou sadu pro PHP úpravou souboru.htaccess soubor. V .htaccess soubor v adresáři, pro který chcete změnit znakovou sadu, zahrňte následující řádek kódu:

php_value default_charset <character set>

Nahraďte character set se znakovou sadou, kterou váš web vyžaduje, například ISO-8859-1 .

Poznámka :Cloud Sites používá výchozí znakovou sadu UTF-8, pokud v .htaccess neurčíte jinou. soubor.

Definujte typy MIME na svém webu se systémem Linux a Apache

Pokud existuje typ MIME (Multipurpose Internet Mail Extensions), který není definován na vašem webu se systémem Linux a Apache, můžete jej definovat v .htaccess přidáním následujícího kódu:

AddType MIMETYPE .extension

Chcete-li například přidat typ MIME pro QuickTime .mov nebo .qt soubor, přidáte následující kód:

AddType video/quicktime .qt .mov

Rozsáhlý seznam typů MIME, které Apache podporuje, najdete na ApacheSoftware Foundation SubversionServer.

Poznámka :Formátování v předchozím odkazu nemusí být zcela správné pro použití v souboru .htaccess soubor.

Vynucení SSL na vašem webu PHP

Přidáním kódu do souboru .htaccess můžete přinutit uživatele k bezpečnému přístupu na váš web PHP přes protokol SSL (Secure Sockets Layer) soubor.

K vynucení SSL na celém webu použijte následující kód:

#Force SSL on entire site 
RewriteEngine On
RewriteBase /
RewriteCond %{ENV:HTTPS} !on [NC] 
RewriteRule ^(.*)$ https://(YOURDOMAIN)/$1 [R,L]

K vynucení SSL v konkrétním adresáři použijte následující kód:

#Force SSL on a specific directory
RewriteEngine On
RewriteBase / 
RewriteCond %{ENV:HTTPS} !on [NC]
RewriteRule ^DIRNAME/(.*)$ https://YOURDOMAIN/DIRNAME/$1 [R,L]

Změňte výchozí dokument na svém webu PHP

Chcete-li změnit výchozí dokument na svém webu založeném na PHP, přidejte následující kód do .htaccess soubor:

DirectoryIndex filename.html

K tomuto kódu můžete také přidat další názvy souborů, jak ukazuje následující příklad:

DirectoryIndex filename.html default.htm home.php home.html

Změnit výchozí znakovou sadu pro HTML

Chcete-li změnit výchozí znakovou sadu pro HTML, přidejte do .htaccess následující řádky soubor umístěný v adresáři, pro který chcete změnit znakovou sadu, jak ukazuje následující příklad:

AddDefaultCharset <character set>

Nahraďte character set se znakovou sadou, kterou váš web vyžaduje, například UTF-8 .

Případně můžete použít AddType direktivu, jak ukazuje následující příklad:

AddType 'text/html; charset=<character set>' html DefaultLanguage en-US

Poznámka :Cloud Sites používá výchozí znakovou sadu UTF-8, pokud v .htaccess neurčíte jinou. soubor.

Povolit SSI

Zahrnutí na straně serveru (SSI) můžete aktivovat pomocí .htaccess s následujícími směrnicemi:

AddType text/html .shtml 
AddHandler server-parsed .shtml 
Options Indexes FollowSymLinks Includes

Poznámka :Obsah PHP nelze obsluhovat pomocí SSI. U obsahu PHP doporučujeme, abyste použili příkazy PHP include nebo required nebo použili inlineframe, jak je znázorněno v následujícím příkladu:

<html> <head></head> <body> <iframe src="/support/how-to/test.php" title="test"> </iframe> </body> </html>

Zastavení spouštění PHP skriptů v adresáři

Chcete-li zastavit spouštění skriptů PHP v adresáři, vytvořte .htaccess soubor v tomto adresáři a přidejte následující řádek:

removehandler .php

Potom přidejte přípony souborů, které chcete zastavit.

Zpracování PHP na HTML a dalších stránkách

Zpracování PHP na stránkách HTM a HTML můžete nastavit tak, že tato rozšíření obslouží obslužný program PHP. Zpracování PHP můžete povolit na.htm a .html soubory ve vašem .htaccess pomocí následujících direktiv:

AddHandler application/x-httpd-php php htm html AddType text/html php

PHP můžete také zpracovat na souborech, které mají příponu .test pomocí následujících direktiv:

AddHandler application/x-httpd-php php test AddType text/html php

Můžete najít další informace o AddHandler a AddType direktivy na webu Apache.

Poznámka :Doporučujeme používat pouze rozšíření PHP pro stránky PHP.

Nastavení chybových stránek pro váš web PHP

Pro svůj web PHP můžete vytvořit vlastní chybové stránky umístěním řádku podobného následujícímu příkladu do souboru .htaccess soubor:

ErrorDocument "code" "location of error document"

Následující příklad ukazuje, jak vytvořit chybovou stránku 404:

ErrorDocument 404 /404.html

Tuto direktivu můžete použít k vytvoření chybových stránek i pro jiné chybové kódy. Musíte však zadat cestu k chybové stránce vzhledem k umístění souboru .htaccess soubor.

Povolit výpis adresářů v PHP

Chcete-li povolit výpis adresářů v PHP, přidejte do .htaccess následující řádek soubor:

Options +Indexes

Vypnout Magic Quotes

U mnoha instalací redakčního systému (CMS) Joomla!® musí zákazníci vypnout Magic Quotes možnost v PHP 5.3. (Tato funkce byla od PHP 5.4 odstraněna). Přidejte následující kód do .htaccess soubor pro vypnutí Magic Quotes funkce:

php_flag magic_quotes_gpc Off

Nastavte časové pásmo pro web, který běží na Linuxu a PHP

Pomocí informací v této části můžete změnit časové pásmo svého webu, který běží na Linuxu a PHP.

Výchozí časové pásmo

Výchozí časové pásmo pro Rackspace Cloud Sites je Central Time (Severní Amerika) a je dodržován letní čas. Posuny UTC jsou následující:

  • Standardní centrální čas UTC–6:00
  • Střední letní čas UTC–5:00

Změňte časové pásmo

Chcete-li změnit časové pásmo pro svůj web běžící na Linuxu a PHP, musíte upravit svůj .htaccess soubor, který obsahuje následující řádek:

php_value date.timezone <TIMEZONE>

Úplný seznam možných TIMEZONE hodnoty, viz Seznam podporovaných časových pásem.

Následující příklad ukazuje, jak nastavit časové pásmo na Dubaj:

php_value date.timezone Asia/Dubai

Otestujte změnu časového pásma

Chcete-li otestovat změnu časového pásma, zkontrolujte informační soubor PHP nebo spusťte následující soubor PHP:

<?php echo date('l jS \of F Y h:i:s A'); ?>

Linux
  1. Tipy a triky pro použití CUPS pro tisk s Linuxem

  2. 10 zajímavých triků a tipů pro příkazový řádek Linuxu, které stojí za to vědět

  3. Oblíbené rsync tipy a triky

  1. Tipy a triky pro proměnné prostředí Linuxu

  2. Tipy a triky pro curl a wget

  3. Jak přesměrovat výstup do souboru a Stdout v Linuxu

  1. 5 zajímavých tipů a triků pro příkazový řádek v Linuxu – část 1

  2. Top 8 tipů a triků příkazového řádku MySQL

  3. Podporované a doporučené souborové systémy v systému Linux