今天有时间,遍整理汇总了一下伪静态在网站中的其他妙用知识:

一、Linux主机.htaccess实现301转向

这种重定向旨在使域名唯一,是网站SEO必须要做的:

打开.htaccess文件,加入以下规则。

1.重定向 luoli.net 到 www.luoli.net

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

2.重定向luoli.net/file/file.php 到 www.luoli.net/otherfile/other.php

RewriteCond %{HTTP_HOST} ^luoli.net$
RewriteRule ^file/file.php$ http://www.luoli.net/otherfile/other.php [R=301,L]

二、使用.htaccess实现站内图片防盗链

在.htacess文件添加以下命令代码:

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^http://www.luoli.net/.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://luoli.net/.*$ [NC]
RewriteRule \.(jpg|jpeg|gif|png|bmp)$ – [F,NC]

把域名更改为自己的网站地址,第四行是防止盗链的文件类型:gif、png、bmp、jpg等,根据需要更改或添加,不同文件扩展名间使用“|”分开。

如果希望显示警告信息,用一张小巧(节约)的“请勿盗链”文字的图片,上传图片到不受.htaccess影响的目录或用外链,然后修改上面的代码为:

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^http://www.luoli.net/.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://luoli.net/.*$ [NC]
RewriteRule \.(gif|jpg)$ http://www.luoli.net/images/jinzhifanyue.jpg [R,L]

设置防盗链后,除了指定的域名,其它域名网站都将无法引用自己的站内图片!

三、分享一个简单的nginx防盗链

分享一个简单的nginx防盗链

location ~* \.(gif|jpg|png|swf|flv|rar|zip|doc|txt|wma|mp3)$ {
valid_referers none blocked www.luoli.net luoli.net www.baidu.com www.google.com www.google.com.hk;
if ($invalid_referer) {
rewrite ^/ http://www.luoli.net;
#return 404;
}
}

第一行:gif|jpg|png|swf|flv|rar|zip|doc|txt 表示对这些后缀的文件实行防盗链

第二行: 表示对来路进行判断,此处输入域名即可,域名之间用空格隔开
if{}里面内容的意思是,如果来路不是指定来路就跳转到 http://www.luoli.net 页面,当然也可以直接返回404

这是比较简单的防盗链,无法防止比如迅雷等下载软件。

还可以使用第三方模块 ngx_http_accesskey_module 实现 nginx 防盗链。具体没研究,等研究实战成功后,分享出来。

四、nginx 301 域名重定向

以 luoli.net 重定向到 www.luoli.net

server
{
listen 80;
server_name vps.luoli.net ;

if ($host != 'luoli.net' ) {
rewrite ^/(.*)$ http://www.luoli.net/$1 permanent;
}

index index.html index.htm index.php default.html default.htm default.php;
root /home/wwwroot;

include discuz.conf;
location ~ .*\.(php|php5)?$
{
fastcgi_pass unix:/tmp/php-cgi.sock;
fastcgi_index index.php;
include fcgi.conf;
}

location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
{
expires 30d;
}

location ~ .*\.(js|css)?$
{
expires 12h;
}

access_log off;
}

五、Win httpd.ini 301、防盗链和绑定根目录设置

在网上有很多人用全能空间,基本上服务商提供支持伪静态是 httpd.ini 格式的,今天我整理下httpd.ini格式的小小用处吧!

当然,你也可以【直接复制】下面的代码另存为 httpd.ini 伪静态文件上传至空间根目录即可:

[ISAPI_Rewrite]

# 3600 = 1 hour
CacheClockRate 3600

RepeatLimit 32

# Protect httpd.ini and httpd.parse.errors files
# from accessing through HTTP

防盗链设置

RewriteCond Host: (.+)
RewriteCond Referer: (?!http://(?:luoli\.net|(.*)\.luoli\.net|baidu\.com|(.*)\.baidu\.com|discuz\.net|(.*)\.discuz\.net|google\.com|(.*).\google.com)).*
RewriteRule .*\.(?:jpg|jpeg|gif|png|bmp|rar|zip|exe) /img/jinzhifanyue.jpg [I,O,N]

让指定域名访问指定根目录

RewriteCond Host: blog\.luoli\.net
RewriteRule ^(.*)$ /blog/$1 [I]

网站301重定向

RewriteCond Host: ^www2\.luoli\.net$
RewriteRule (.*) http://www.luoli.net$1 [I,R]

cPanel 开启Gzip

output_buffering = Off 
output_handler = 
zlib.output_compression = On

六、其他 .htaccess 妙用

將 RewriteEngine 模式打開

RewriteEngine On
Options +Indexes:顯示目錄下所有檔案
Options -Indexes:隱藏目錄下所有檔案 (上面已經介紹過)
IndexOptions +FancyIndexing:顯示目錄下所有檔案,檔案前面包含檔案類型的小圖示
IndexOptions -FancyIndexing : 顯示目錄下所有檔案,但不包含檔案類型的小圖示
IndexIgnore *.php *.exe:隱藏特定的檔案, 其餘檔案正常顯示(隱藏所有的php和exe檔案)

自定义错误页面

ErrorDocument 404 /arc/404.html
ErrorDocument 503 /error-pages/service-unavailable.html

IP禁止

Order allow,deny
Deny from 123.45.67.8
Deny from 123.123.7
Allow from all

上面能禁止IP地址在123.45.67.8以及IP地址开头为123.123.7的任何人。例如123.123.74.42 就不能得到访问。

变更默认首页

DirectoryIndex homepage.html

去除页面广告(不一定适用所有免费空间)

LayoutIgnoreURI *.php
LayoutIgnoreURI *.cgi
LayoutIgnoreURI *.htm
LayoutIgnoreURI *.html
LayoutIgnoreURI *.txt

页面跳转

Redirect page1.html page2.html

如果某人访问 http://www.example.com/page1.html,他将被跳转到(带有HTTP状态代码302)的http://www.example.com/page2.html

服务器内置SSI

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

防盗链开启,支持泛域名

RewriteCond %{HTTP_REFERER} !^http://luoli.net.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(.)+\.luoli\.net [NC]
RewriteRule .*\.(gif|GIF|jpg|JPG|mpg|MPG|mpeg|MPEG|wmv|WMV|rm|RM|zip|ZIP|rar|RAR|js|JS|css|CSS|txt|TXT)$ http://www.luoli.net/images/jinzhifanyue.jpg [NC,R,L]

让指定域名访问指定根目录

DirectoryIndex index.php index.html index.htm
RewriteCond %{HTTP_HOST} ^blog.luoli.net$
RewriteCond %{REQUEST_URI} !^/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /$1
RewriteCond %{HTTP_HOST} ^blog.luoli.net$
RewriteRule ^(/)?$ /blog/ [L]

网站301重定向

RewriteCond %{http_host} ^luoli.net [NC]
RewriteRule ^(.*)$ http://www.luoli.net [L,R=301]

cPanel 开启Gzip

<ifmodule mod_deflate.c>
AddOutputFilterByType DEFLATE text/html text/css text/plain text/xml application/x-httpd-php application/x-javascript
</ifmodule>

上面代码全部在百度上收集整理的,经过本人全部测试过的,很给力。有需要的朋友有福了,现在整理出来分享给大家,希望大家能用得上。