Nginx判断accept_language禁止其他语言浏览器/操作系统访问

Http协议发送请求时会附加 accept_language,通过它可知道浏览器所支持的语言,一般也为操作系统默认的语言。
列举一些 accept_language 标识:

zh 中文
zh-cn 大陆
zh-tw 台湾
zh-hk 香港
en 英文

配置Nginx允许中文用户访问,拒绝其它语言用户访问。

if ( $http_accept_language ~* ^[^zh])
{
return 404; #非中文用户访问网站返回404
}

用Curl测试:

curl -I -H "Accept-Language:en"  www.getvm.com
HTTP/1.1 404 Not Found
Date: Wed, 20 Jun 2012 18:38:33 GMT
Content-Type: text/html
Content-Length: 169
Connection: keep-alive

Apache/Httpd 安装 mod_pagespeed 加速模块

mod_pagespeed 是谷歌发布的加速httpd的优化模块,通过自动优化代码、压缩传输内容、自动缓存加速http,支持Centos/Debian系统。
Centos/Fedora下安装:

#http://www.getvm.com
#32位
wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_i386.rpm
#64位
wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_x86_64.rpm
yum install at
rpm -U mod-pagespeed-*.rpm

Debina/Ubuntu下安装:

#32位
wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_i386.deb
#64位
wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_x86_64.deb
dpkg -i mod-pagespeed-*.deb

重启httpd:

 

services httpd restart

 

查看pagespeed是否加载:

httpd -M|grep pagespeed

怎样让WordPress图片自动居中?

一、进入WordPress后台 >> 外观 >> 编辑 >> 选择样式表style.css;

二、在style.css文件最后加入:

.alignleft {
display:inline;
float:left;
margin-right:1.625em;
}
.alignright {
display:inline;
float:right;
margin-left:1.625em;
}
.aligncenter {
clear:both;
display:block;
margin-left:auto;
margin-right:auto;
}

即可。

.htaccess图片防盗链方法二则

统一在根目录下设置.htaccess达到图片防盗链的功能可以覆盖整个网站,.htaccess可以分布在不同的目录下,然后通过规则来达到整个网站相当复杂的功能,但是这也增加了网站出错的概念。

图片防盗链主要功能是减轻自己服务器的负担,同时保护自己的版权,然而问题也是不可避免的,譬如如果对Google防盗链,搜索引擎自然不会收录一张反馈为红叉的图片;对RSS防盗链,订阅用户会获得很差的用户体验,不定就取消订阅了

所以请谨慎考虑使用。

一、根目录设置.htaccess达到图片防盗链之效;

设置.htaccess禁止图片盗链,下面是禁止图片盗链的.htaccess设置部分

RewriteEngine on
RewriteCond %{REQUEST_URI} ^/(allow1|allow2)
RewriteRule ^.*$ – [L]

首先,设置允许可“盗链”即外部网站可以使用的文件所在的目录,上面我们设置了两目录,分别为allow1和allow2,当然,如果你只有一个目录的话,可以将其改为:

RewriteCond %{REQUEST_URI} ^/allow1

接下来判断是否为图片文件:

RewriteCond %{REQUEST_FILENAME} .(gif|jpeg|png)$ [NC]

你也可以根据自己的需要设置更多的文件类型:

RewriteCond %{HTTP_REFERER} !^$

上面这一行意在允许空“HTTP_REFERER”的访问,即允许用户在浏览器地址栏中直接输入图片地址的显示,一般而言,这是可以选的,不过建议这样设置,如果强迫必须具有“HTTP_REFERER”才能访问,可以回带来某些问题,不然说在用户通过代理访问时。

RewriteCond %{HTTP_REFERER} !taonice.cn [NC]
RewriteCond %{HTTP_REFERER} !google.com [NC]
RewriteCond %{HTTP_REFERER} !baidu.com [NC]

设置允许访问的HTTP来源,包括Google等,

RewriteRule (.*) /allow1/tzh.gif [R,NC,L]

将不满足上述条件的访问重定向到tzh.gif ,你可能已经注意到,tzh.gif位于允许“盗链”的目录allowq下,这一点很重要,不然,你的警告资讯图片将无法在对方网站上显示。

其它类型文件的防盗链设定,如果你您的网站上存在其它较大的文件,如flash、mp3被其他网站盗链,可以同样采取上述方法,比如说flash文档,可以类似如下的设置:

RewriteCond %{REQUEST_URI} ^/allow1
RewriteRule ^.*$ – [L]RewriteBase /
RewriteCond %{REQUEST_FILENAME} .swf$ [NC]
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !taonice.cn [NC]

RewriteRule (.*) /allow1/tzh.swf [R,NC,L]

当然,需要事先先创建一个声明版权资讯的Flash文件“tzh.swf”,其它防止mp3文件、压缩文件盗链的设置与此类似,不再赘述。

二、图片目录设置.htaccess达到图片防盗链之效;

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$ [NC]
RewriteCond %{HTTP_REFERER} !taonice.cn [NC]
RewriteCond %{HTTP_REFERER} !google.com [NC]
RewriteCond %{HTTP_REFERER} !baidu.com [NC]

RewriteRule .*.(gif|jpg)$ http://www.taonice.cn/no.png [R,NC,L]

简单的解释一下上述语句:

1、RewriteCond %{HTTP_REFERER} !^$ [NC]

允许空“HTTP_REFERER”的访问,即允许用户在浏览器地址栏中直接输入图片地址时图片文件的显示。一般而言,这是可选的,不过,建议这么设置,如果强迫必须具有“HTTP_REFERER”才能访问,可能会带来某些问题,比如说在用户通过代理服务器访问时。

2、RewriteCond %{HTTP_REFERER} !taonice.cn [NC]

设置允许访问的HTTP来源,包括我们的站点自身、Google、Baidu等。

3、RewriteRule .*.(gif|jpg)$ http://www.taonice.cn/no.png [R,NC,L]

定义被盗链时替代的图片,让所有盗链 jpg、gif、png 等文件的网页,显示根目录下的 no.png 文件。注意:替换显示的图片不要放在设置防盗链的目录中,并且该图片文件体积越小越好。当然你也可以不设置替换图片,而是使用下面的语句即可:

RewriteRule .*.(gif|jpg|png)$ – [F]

4、说明一下其中的R、NC 和 L

R 就是转向的意思

NC 指的是不区分大小写

L 的作用是指明本次转向到此结束,后续的转向不受先前判断语句的影响

5、防止盗链的文件类型

上例中是 gif、jpg、png,而根据需要,可更改或添加其他文件类型,如rar、mov等,不同文件扩展名间使用“|”分割。

这样的话,就可以基本做到简单的防止被盗链情况的发生,而且可以尽最大可能的减少服务器流量的无畏消耗。

.htaccess文件为644权限不可修改

错误描述:在CPanel、DirectAdmin等后台或FTP修改.htaccess文件时候,显示文件权限为644,所有人为Apache,并且无法修改无法覆盖。

解决办法:

一、下载原目录下.htaccesss文件到本地;

二、删除服务器上.htaccess文件;

三、本地编辑好.htaccess文件直接FTP上传即可。

P.S.:

不小心误删除 .htaccess 文件的处理办法、WordPress 自动生成.htaccess 的办法:

前提:WordPress安装目录具有777完全读写权限。

方法:进入后台 >> 设置 >> 固定链接设置

如无需修改,则直接点击“保存更改”按钮,即可重新自动生成。

P.P.S.:

警告:网站根目录、程序主目录、WordPress 的 wp-content 目录具有完全读写权限777非常危险,严重威胁网站安全!请在修改完之后改回。

WordPress升级错误:class-wp-filesystem-direct.php on line 200

错误描述:WordPress在后台进行版本升级时,出错,之后进入前台或者后台,都无法访问进入,错误信息如下:

Warning: copy(/home/xxx/public_html/wordpress/wp-admin/menu.php) [function.copy]: failed to open stream: Permission denied in /home/xxx/public_html/wordpress/wp-admin/includes/class-wp-filesystem-direct.php on line 200

Warning: copy(/home/xxx/public_html/wordpress/wp-admin/menu.php) [function.copy]: failed to open stream: Permission denied in /home/xxx/public_html/wordpress/wp-admin/includes/class-wp-filesystem-direct.php on line 200

错误原因:FTP写入权限不够。

解决办法:

同《WordPress升级错误:class-wp-filesystem-direct.php on line 122

特别注意:请在自动升级完成之后修改wp-content文件夹权限回755,否则将影响程序安全。

WordPress升级错误:class-wp-filesystem-direct.php on line 122

错误描述:WordPress在后台进行版本升级时,出错,之后进入前台或者后台,都无法访问进入,错误信息如下:

Warning: copy(/home/xxx/public_html/wordpress/wp-admin/menu.php) [function.copy]: failed to open stream: Permission denied in /home/xxx/public_html/wordpress/wp-admin/includes/class-wp-filesystem-direct.php on line 122

Warning: copy(/home/xxx/public_html/wordpress/wp-admin/menu.php) [function.copy]: failed to open stream: Permission denied in /home/xxx/public_html/wordpress/wp-admin/includes/class-wp-filesystem-direct.php on line 122

错误原因:FTP写入权限不够。

解决办法:

方法一:用FTP/SSH进入,赋予整个网站目录777完全读写权限。

方法二:用CPanel/DirectAdmin等管理平台进入文件管理,赋予整个网站目录777完全读写权限。

特别注意:请在自动升级完成之后修改wp-content文件夹权限回755,否则将影响程序安全。

WordPress错误:wp-settings.php on line 137

错误描述:WordPress在后台进行版本升级时,出错,之后进入前台或者后台,都无法访问进入,错误信息如下:

Warning: require(/wp-includes/class-wp-embed.php) [function.require]: failed to open stream: No such file or directory in /wp-settings.php on line 137

Fatal error: require() [function.require]: Failed opening required ‘/wp-includes/class-wp-embed.php’ (include_path=’.:/usr/local/lib/php:/usr/local/php5/lib/pear’) in /wp-settings.php on line 137

解决办法:

一、通过FTP或者相关主机商提供的文件管理工具,进入到 wp-content/themes,找到现在正在使用主题的文件夹重命名文件夹,在原文件夹名称后加入“-old”(不包括引号)。尝试是否恢复,否,进入下一步。

二、通过FTP或者其他文件管理工具,或者phpMyAdmin,重新设定插件文件夹(wp-content/plugins),类似上步骤。尝试是否恢复,否,进入下一步。

三、

1. 备份数据库、备份原网站文件。

2. 进入WordPress官网,下载最新安装包。

3. 解压,上传覆盖原程序。

4. 在浏览器地址栏键入WordPress升级程序地址:http://你的网站地址/wp-admin/upgrade.php ,按照步骤升级。

5. 即可。

美好的商业时代

刚在凤凰网上看到马云先生的发言,2012年12月21日是新世纪的开始,因为这个伟大的互联网商业是80,90后创造出来的,他们讲带来一个更为美好的商业时代。

由衷的希望这一切成真! 但是我们也要看到接下来的10年面对的巨大挑战:

首先,电子商务即将告别高速增长。电子商务的高速增长,虽然主要因为这是个新兴行业,但是中国的电商发展速度以及规模,以及其在国民经济中占的影响程度,都远远大于美国,那么是什么原因造成的呢?我个人赞成郎咸平的观点,原因就是中国的经营环境太差,高税率,重复征税,多头监管,流程复杂,使得经营成本高昂。笔者有位朋友来到中国,说人啊发现了一个奇怪的现象,说打印机,复印机这种办公设备,都是中国造的,可是居然在美国卖的比在中国卖的还便宜。他百思不得其解。其实,原因很简单,就在于中国的税率和重复征税。此外,经过这一轮的房地产热潮,房租高涨,大量的小店家倒闭,更助推了电子商务的热潮。

但是,有一点是被忽视的,在一定实体经济的基础上,流通行业的最大潜力也是确定的。也就是说,当电子商务不断发展到一个阶段的时候,你会发现,持续投入的推广费用,和产出的比值,已经远远不经济,不划算了。这就是现在电商网站的瓶颈,也是为什么大家都说没挣到钱的原因。

房地产现状下的挤出效应,将会导致长时期的消费不振。从2004年到现在的8年时间里,房地产价格一路飞涨,造成了千万计的房奴。虽然没有确切的数据,但是仅从中国银行业的收入水平就可见一斑。2012年16家上市公司前三季度共实现营业收入19296.28亿元,同比增长17.09%;实现归属于母公司净利润8127.67亿元,同比增长17.44%。这个数字相当于前一年的全国财政收入。而在这其中,房贷业务站到将近半壁江山。国民有多少可支配收入可以用于消费,只要不是富二代,官二代,是买了房子的都有所体会。这么沉重的包袱,逼迫人们去互联网上消费,以减少外出购物的开支,可越是这样,传统的,实体的经济生意就会越差。一方面我们看到大家因为没钱才在网上买东西,另一方面,人们足不出户,原来传统的商业模式势必日渐凋零。

在没有完备的知识产权的保护下,高度发达的电子商务,伴生着越来越多的问题。其中一个就是,盗版可以迅速,便捷的占领市场,导致的结果就是没有人愿意创新。

在这一点上,我希望着重说明一下。对于的搜索排名模式,价格在排名中占到非常重要的作用。由于排序反映不出质量差异,这样卖家一定会选择便宜质差的产品,因为这样更具有排名优势。难怪买家在越来越多的抱怨产品的质量不好。这一切一切的缘由,就是电商产品分类模式。原创的,好的设计,好质量的产品,如果你没有准备好大量的推广费用,你几乎无法在庞大的商城生存。这又反过来倒推了产品质量的进一步恶化,原创的进一步消失。

经过10年的发展,电商卖家经过分化,已经发展出很多巨型的卖家。让他们和初级的卖家同池游泳,本来就不公平。更为恶劣的是大型卖家通过巨额的推广费用,垄断了绝大部分的流量,使得90%的小型卖家只能靠剩下的10%的流量生存,他们的生存状态,可想而知。近年来不断有卖家猝死,过劳死,相信这个一定无论谁都无法忽视的问题。

如果能把电子商务的构架进行修改,使得大型卖家无法通过垄断流量的方式挤压小卖家的生存空间,那么卖家是不是会把精力更多地投入在产品的创新上呢?

我希望大家明白的是,一个基于公平的店铺体系,是多么的重要。

必马特蜂窝网 CEO Magician Ma

www.bee-mart.com