Heim >Backend-Entwicklung >PHP-Tutorial >Detaillierte Erläuterung der Apache .htaccess-Datei und Zusammenfassung der Konfigurationstechniken
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>