Heim >Backend-Entwicklung >PHP-Tutorial >Detaillierte Erläuterung der Apache .htaccess-Datei und Zusammenfassung der Konfigurationstechniken

Detaillierte Erläuterung der Apache .htaccess-Datei und Zusammenfassung der Konfigurationstechniken

PHP中文网
PHP中文网Original
2016-08-18 09:15:422037Durchsuche

1. Die Grundfunktion von .htaccess

.htaccess ist eine reine Textdatei, die Anweisungen zur Apache-Serverkonfiguration speichert.
Die Hauptfunktionen von .htaccess sind: URL-Umschreiben, benutzerdefinierte Fehlerseiten, MIME-Typkonfiguration und Zugriffskontrolle usw. Dies spiegelt sich hauptsächlich in pseudostatischen Anwendungen, Bild-Hotlink-Schutz, benutzerdefinierten 404-Fehlerseiten, Blockieren/Zulassen bestimmter IPs/IP-Segmente, Durchsuchen von Verzeichnissen und Homepages, Verhindern des Zugriffs auf bestimmte Dateitypen, Dateikennwortschutz usw. wider.
Der Anwendungsbereich von .htaccess bezieht sich hauptsächlich auf das aktuelle Verzeichnis.


2. .htaccess-Konfiguration aktivieren
Um .htaccess zu aktivieren, müssen Sie httpd.conf ändern, AllowOverride aktivieren und AllowOverride verwenden, um die Verwendung bestimmter Befehle einzuschränken.
Nachdem Sie die Datei httpd.conf mit einem Texteditor geöffnet haben, suchen Sie nach

und kopieren Sie den Code wie folgt:

<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
改为:
<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>


Wenn Sie einen Dateinamen verwenden müssen außer .htaccess. Dies kann mit dem Befehl AccessFileName geändert werden. Wenn Sie beispielsweise .config verwenden müssen, können Sie es in der Serverkonfigurationsdatei wie folgt konfigurieren:

Kopieren Sie den Code wie folgt:

AccessFileName .config

3. .htaccess-Zugriffskontrolle

1. Grundlagen der Zugriffskontrolle: Bestellbefehl

Um den Zugriff von Benutzern auf einige Schlüsselverzeichnisse einzuschränken, werden normalerweise .htaccess-Dateien hinzugefügt wie folgt:

Kopieren Sie den Code wie folgt:

<Files  ~ "^.*\.([Ll][Oo][Gg])|([eE][xX][eE])">
 Order allow,deny
 Deny from all
</Files>

Erklärung:

(1) Die Wellenlinie nach Dateien zeigt an, dass „regulär Ausdrücke“ sind aktiviert. Die einfache Schreibmethode ist: 2ca5125ae7036278bafb781dbfd790ce搜索引擎友好的301永久转向方法
为什么这是搜索引擎友好的呢?因为现在很多现代的搜索引擎都有能根据检查301永久转向来更新它现有的记录的功能。

复制代码代码如下:

Redirect 301 http:    //www.php.cn/article/index http:    //www.php.cn/article/


3. 屏蔽下载对话框
通常,当你下载东西的时候,你会看到一个对话框询问你是保持这个文件还是直接打开它。如果你不想看到这个东西,你可以把下面的一段代码放到你的.htaccess文件里。

复制代码代码如下:

AddType application/octet-stream .pdf  
AddType application/octet-stream .zip  
AddType application/octet-stream .mov


4. 省去www前缀
SEO的一个原则是,确保你的网站只有一个URL。因此,你需要把所有的通过www的访问转向的非www,或者反这来。

复制代码代码如下:

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


5. 个性化Error页面
对每个错误代码定制自己个性化的错误页面。

复制代码代码如下:

ErrorDocument 401 /error/401.php  
ErrorDocument 403 /error/403.php  
ErrorDocument 404 /error/404.php  
ErrorDocument 500 /error/500.php


6. 压缩文件
通过压缩你的文件体积来优化网站的访问速度。

复制代码代码如下:

# 压缩 text, html, javascript, css, xml:  
AddOutputFilterByType DEFLATE text/plain  
AddOutputFilterByType DEFLATE text/html  
AddOutputFilterByType DEFLATE text/xml  
AddOutputFilterByType DEFLATE text/css  
AddOutputFilterByType DEFLATE application/xml  
AddOutputFilterByType DEFLATE application/xhtml+xml  
AddOutputFilterByType DEFLATE application/rss+xml  
AddOutputFilterByType DEFLATE application/javascript  
.AddOutputFilterByType DEFLATE application/x-javascript


7. 缓存文件
缓存文件是另外一个提高你的网站访问速度的好方法。

复制代码代码如下:

<FilesMatch “.(flv|gif|jpg|jpeg|png|ico|swf|js|css|pdf)$”>  
Header set Cache-Control “max-age=2592000″  
</FilesMatch>


8. 对某些文件类型禁止使用缓存
而另一方面,你也可以定制对某些文件类型禁止使用缓存。

复制代码代码如下:

# 显式的规定对脚本和其它动态文件禁止使用缓存  
<FilesMatch “.(pl|php|cgi|spl|scgi|fcgi)$”>  
Header unset Cache-Control  
</FilesMatch>


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn