非插件实现WordPress站点七牛云存储CDN加速服务

非插件实现WordPress站点七牛云存储CDN加速服务

9个月前 (03-10) 浏览: 20 评论: 0

第一步:创建七牛公开空间 首先,你得有一个七牛账号(这不是废话么~)。什么?你才知道七牛?那还不快注册成为七牛用户,立即享受每月 10G 流量 + 10G 存储的免费服务。 有了账号,你就可以新建空间,我们需要建立一个公开空间。 七牛云存储 - 新建空间 第二步:设置镜像存储 成功建立空间之后,打开该空间的【空间设置】页面。 七牛云存储 - 空间设置 在【域名设置】下,我们知道了该空间的默认域名,你也可以绑定自己的域名,这里不展开讨论。 在【镜像存储】下,点击【一键加速网站】按钮,在弹出的对话框中,【镜像源】填写你的博客地址,确定即可。 七牛云存储 - 加速设置设置加速后,http://alextoo.com/folder/file.jpg 就可以通过 http://alextoo.u.qiniudn.com/folder/file.jpg 来访问了。 也就是说,我们只需将 WordPress 输出的内容中,所有的 http://alextoo.com/ 域名替换为http://alextoo.u.qiniudn.com/ 就能实现 CDN 加速。(仅作举例,只替换域名是错误的) 第三步:添加 WordPress 代码 在 WordPress 主题目录下的 functions.php 文件中,加入以下代码实现替换功能: <code class=" language-php"><span class="token keyword">if</span> <span class="token punctuation">(</span> <span class="token operator">!</span><span class="token function">is_admin</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token punctuation">)</span> <span class="token punctuation">{</span>         <span class="token function">add_action</span><span class="token punctuation">(</span><span class="token string">'wp_loaded'</span><span class="token punctuation">,</span><span class="token string">'c7sky_ob_start'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>                  <span class="token keyword">function</span> <span class="token function">c7sky_ob_start</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>                 <span class="token function">ob_start</span><span class="token punctuation">(</span><span class="token string">'c7sky_qiniu_cdn_replace'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>         <span class="token punctuation">}</span>                  <span class="token keyword">function</span> <span class="token function">c7sky_qiniu_cdn_replace</span><span class="token punctuation">(</span><span class="token variable">$html</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>                 <span class="token keyword">return</span> <span class="token function">str_replace</span><span class="token punctuation">(</span><span class="token string">'[这里填写博客路径]'</span><span class="token punctuation">,</span> <span class="token string">'[这里填写七牛空间路径]'</span><span class="token punctuation">,</span> <span class="token variable">$html</span><span class="token punctuation">)</span><span class="token punctuation">;</span>         <span class="token punctuation">}</span> <span class="token punctuation">}</span> </code> 以小影志的上传目录 wp-content/uploads/ 文件夹为例,路径就应该替换为如下代码: <code class=" language-php"><span class="token keyword">return</span> <span class="token function">str_replace</span><span class="token punctuation">(</span>'http<span class="token punctuation">:</span><span class="token comment" spellcheck="true">//alextoo.com/wp-content/uploads/', 'http://alextoo.u.qiniudn.com/wp-content/uploads/', $html);</span> </code> 如果你需要更具体的范围控制(多目录、指定文件类型),可使用以下代码替换上面的c7sky_qiniu_cdn_replace 部分: <code class=" language-php"><span class="token comment" spellcheck="true">//修改自七牛镜像存储 WordPress 插件</span> <span class="token keyword">function</span> <span class="token function">c7sky_qiniu_cdn_replace</span><span class="token punctuation">(</span><span class="token variable">$html</span><span class="token punctuation">)</span><span class="token punctuation">{</span> <span class="token

Apache相对于windows/linux 性能优化

Apache相对于windows/linux 性能优化

9个月前 (03-09) 浏览: 28 评论: 0

Apache的配置是针对原先较低的服务器来配置的,原先的配置显然已经不适合了,所以今天开始研究下Apache配置的问题。 1. 首先要了解Apache采用的MPM(Multi -Processing Modules,多道处理模块) MPM是Apache的核心,它的作用是管理网络连接、调度请求。 Apache2.0中MPM分为3种(perfork、worker、event)。perfork从Apache1.3中继承下来的,它采用的是进程管理方式,所以它可以提供更可靠的性能和更好的兼容性;worker是Apache2.0中新增加的方式,它采用了线程控制方法,可以比perfork更节约系统开销、处理更多的数据量,但同时兼容性并不是很好,很多旧的程序无法工作在worker下;event仍处于试验阶段,它为每个任务分配不同的进程池,目前不应该采用。 通过命令 httpd -l 可以获取目前Apache采用的是哪种MPM 本文仅针对perfork方式进行讨论 2. 了解perfork的工作方式 查看Apache2.0的配置文件httpd.conf,可以看到perfork的配置段,大致如下: ServerLimit 256 StartServers 5 MinSpareServers 10 MaxSpareServers 15 MaxClients 256 MaxRequestsPerChild 4000 当Apache被启动时,Apache会自动创建StartServers个进程,并且尽力将空闲进程数保持在MinSpareServers和MaxSpareServers之间。 如果空闲进程小于MinSpareServers,Apache将会以大约每秒1个的速度新建进程。 如果空闲进程小于MaxSpareServers,Apache将会删除多余的空闲进程,释放服务器资源。 进程数的最大值由MaxClients控制,在Apache1.3中最大只能设置为256,但在Apache2.0中,可以通过在配置开头增加ServerLimit项目来突破256的限制,此时必须 MaxClients ≤ ServerLimit ≤ 20000 MaxRequestsPerChild用来控制每个进程在处理了多少次请求之后自动销毁,这个参数可以设置为0表示无限(即不销毁进程)。   3. 优化perfork 首先,对于一个负载相对较高的网站来说,256的进程限制是不够的,如果服务器已经达到256的极限,那么接下去的访问就需要排队,这也就是为什么某些服务器负载不高,但是访问却很慢的原因之一。所以首先应该了解服务器在繁忙时的进程数量。 通过命令ps -ef|grep httpd|wc -l可以了解到当前系统中Apache进程数,通过设置ServerLimit和MaxClients来达到为服务器软扩容的目的。 然后,在访问量高峰期,经常会出现的情况是突然之间发生非常多的并发连接,然后突然之间减少了很多访问。如果Apache没有准备足够数量的预备进程,那访问只能等待Apache每秒1个的新增进程,随后又要将多余的进程删除,那Apache只能一直忙于新建和销毁进程,大大地降低了访问速度。可以适当增加StartServers、MinSpareServers、MaxSpareServers来使得Apache不需要一直忙于作无用功。 最后,强烈推荐MaxRequestsPerChild不要设置为0,设置为非0,可以保护Apache进程免遭内存泄漏的影响,因为你不知道运行在Apache上的应用程式在什么时候会出错导致内存泄漏。 设置完之后大致是这样的: ServerLimit 1000 StartServers 30 MinSpareServers 30 MaxSpareServers 45 MaxClients 1000 MaxRequestsPerChild 4000

CentOS下pip和shadowsocks的安装使用

CentOS下pip和shadowsocks的安装使用

10个月前 (02-07) 浏览: 36 评论: 0

Pip是安装Python包的工具,提供了安装、列举已安装包、升级以及卸载包的功能。Pip 是对easy_install的取代,提供了和easy_install相同的查找包的功能,因此可以使用easy_install安装的包也同样可以使用pip进行安装。 目前有很多Python程序都是可以直接通过Pip来一键安装了,比如众所周知的Django、Markdown、Shadowsocks等。 简要介绍一下Pip的用法(以安装Shadowsocks举例): 1、安装package pip install shadowsocks 2、列出已安装的packages pip freeze 3、安装特定版本的package pip install shadowsocks=1.3.3′ pip install shadowsocks>1.0,<1.3.3′ 4、升级已安装的package到最新版本 pip install -U shadowsocks 5、卸载已安装的package pip uninstall shadowsocks 6、查询已安装的package pip search “shadowsocks” 安装Pip之前必须要先安装setuptools,安装setuptools之前,必须要安装了Python,这之间的安装过程存在依赖关系,缺一不可。因此,整个过程还是比较麻烦的。 1、 检查Python版本 python –version CentOS6.5默认安装的Python版本是2.6.6,返回值为:Python 2.6.6 2、 安装setuptools yum install -y python-setuptools 安装完毕后,easy_install命令就可以使用了。 3、 安装pip easy_install pip 通过easy_install安装pip是最为简单的方法。pip默认安装到/usr/bin目录下。 4、 安装shadowsocks pip install shadowsocks Shadowsocks的配置和使用 至于Shadowsocks可以拿来做什么,这里就毋须赘述了。直接开始吧。 1、 创建Shadowsocks的配置文件: CentOS下通过vim创建该配置,运行命令: vi /etc/shadowsocks.json 内容如下: { "server":"your_server_ip", "server_port":8989, "local_address": "127.0.0.1", "local_port":1080, "password":"yourpassword", "timeout":600, "method":"aes-256-cfb", "fast_open": false, "workers": 1 } 各字段的含义: server:服务器 IP (IPv4/IPv6),注意这也将是服务端监听的 IP 地址 server_port:监听的服务器端口 local_address:本地监听的 IP 地址 local_port:本地端端口 password:用来加密的密码 timeout:超时时间(秒) method:加密方法,可选择 “bf-cfb”, “aes-256-cfb”, “des-cfb”, “rc4”, 等等。默认是一种不安全的加密,推荐用 “aes-256-cfb” fast_open:true 或 false。如果你的服务器 Linux 内核在3.7+,可以开启 fast_open 以降低延迟。开启方法: echo 3 > /proc/sys/net/ipv4/tcp_fastopen echo 3 > /proc/sys/net/ipv4/tcp_fastopen 开启之后,将 fast_open 的配置设置为 true 即可。 works:works数量,默认为 1 2、 安装M2Crypto 默认加密方法 table 速度很快,但很不安全。推荐使用 “aes-256-cfb” 或者 “bf-cfb”。请不要使用 “rc4″,它不安全。如果选择 “table” 之外的加密,需要安装 M2Crypto。 先安装依赖包: yum install -y openssl-devel gcc swig python-devel autoconf libtool 安装setuptools: wget --no-check-certificate https://bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py python ez_setup.py install 再通过pip安装M2Crypto: pip install M2Crypto 3、 安装 gevent 安装 gevent可以提高 Shadowsocks 的性能。CentOS下安装gevent依赖libevent和greenlet。 安装libevent: yum install -y libevent 安装greenlet: pip install greenlet 安装gevent: pip install gevent 4、 命令行参数(服务器端启动命令) ssserver -c /etc/shadowsocks.json 如果想在后台一直运行Shadowsocks,启动命令如下: nohup ssserver -c /etc/shadowsocks.json > /dev/null 2>&1 & 备注:关于nohup,是可以让程序在后台运行的命令。 同时可以用命令行参数覆盖 /etc/shadowsocks.json 里的设置: sslocal -s 服务器地址 -p 服务器端口 -l 本地端端口 -k 密码 -m

Windows本地服务器优化Apache性能,提高并发

Windows本地服务器优化Apache性能,提高并发

10个月前 (02-06) 浏览: 33 评论: 0

Apache服务器配合PHP日趋成为当前网站架设的主流应用,但是在国内Linux系统毕竟没有Windows系统应用的多,因此小杜整理下在Windows本地服务器优化Apache性能。 在Windows系统上面按以往Unix/linux的经验配置Apache时,由于Windows的内存回收机制和进程管理的不同,会发现许多新问题。前些时单位的网站需要搬迁到新的Windows服务器,笔者在调试过程中也碰上了许多问题。新系统是Windows 2003 Server,为了满足网站高负荷的要求,在调整Apache参数时发现进程经常占用内存过多导致当机。经过不断的优化和修改参数组合,终于让服务器稳定下来,可以满足大量访问的考验和应用要求。笔者总结了调试过程中的问题和解决办法如下,以供有类似需求的网管员参考(系统环境为Windows Server 2003和apache2.2.8):1、http-mpm.conf设置Apache的线程数控制文件为http-mpm.conf,在conf/exrtra目录下面,要使该配置文件起作用需要在httpd.conf 中将 Include conf/extra/httpd-mpm.conf前#去掉,以使得http-mpm.conf生效。在Windows系统中,起作用的是Winnt mpm段, <IfModule mpm_winnt_module> ThreadsPerChild 150 MaxRequestsPerChild 0 <IfModule> 以上是缺省的配置,一般情况下够用了,但负荷较大的网站就需要修改了,否则访问网站会变慢或没有响应。实际设置中可以根据apache-status查看apache实时连接状态,查看其中线程占用数目情况来进行相应的调整,我的服务器最后设置如下: <IfModule mpm_winnt_module> #ThreadLimit 350 ThreadsPerChild 350 MaxRequestsPerChild 10000 Win32DisableAcceptEx </IfModule> 其中ThreadLimit是占用系统线程数限制,修改后会在apache-status中直接看到效果,就是对应的最大的可用线程数 (如下所示): 1 requests currently being processed, 349 idle workers 对于mpm_winnt,ThreadLimit的默认值是1920;对于其他mpM这个值是64。 注意:Apache在编译时内部有一个硬性的限制"ThreadLimit 20000"(对于mpm_winnt是"ThreadLimit 15000"),你不能超越这个限制。 ThreadsPerChlid是Apache进程的子线程数,这个指令设置了每个子进程建立的线程数。子进程在启动时建立这些线程后就不再建立新的线程了。如果使用一个类似于mpm_winnt只有一个子进程的mpM,这个数值要足够大,以便可以处理可能的请求高峰。如果使用一个类似于worker有多个子进程的mpM,每个子进程所拥有的所有线程的总数要足够大,以便可以处理可能的请求高峰。 该参数需要根据 apache-status实时的监控情况来调节,太大会导致内存增长过快,直到服务器当机,太小会导致服务器连接队列在高峰期时占满,从而导致网站连接 慢。同时我们应该修改另一个配置文件httpd-default.php中的超时设置来配合这个参数。 对于mpm_winnt,ThreadsPerChild的默认值是64;对于其他mpM是25。MaxRequestsPerChild是进程的最大的请求数目,既指网站收到请求的缓存数。设置太小了会影响服务器性能,因为会占用较多cpu时间,太大了则会占用内存资源。一般大型的网站文件个数都是成千上万,所以管理员应该根据网站情况自己设定。 MaxRequestsPerChild指令设置每个子进程在其生存期内允许伺服的最大请求数量。到达MaxRequestsPerChild的限制后,子进程将会结束。如果MaxRequestsPerChild为"0",子进程将永远不会结束。 在mpm_netware和mpm_winnt上的默认值是"0"。 将MaxRequestsPerChild设置成非零值有两个好处: a)可以防止(偶然的)内存泄漏无限进行,从而耗尽内存。 b)给进程一个有限寿命,从而有助于当服务器负载减轻的时候减少活动进程的数量。 注意:对于KeepAlive链接,只有第一个请求会被计数。事实上,它改变了每个子进程限制最大链接数量的行为。Win32DisableAcceptEx加入该语句是为了解决一些警告: 2、httpd-default.conf设置在httpd.conf中去掉Include conf/extra/httpd-default.conf前的#以使httpd-default.php生效。我们需要调节以下参数: Timeout 20 该参数为连接超时,缺省的300秒显然太大,缩小该参数就会减少同时连接数,即用户实际占用的线程数,这样就可以起到配合上面ThreadsPerChlid参数的作用。 KeepAlive On 该参数为是否保持活连接,目前网站中一个页面一般会包含多个文件,所以相应用户访问时会有多个请求,因此开启可以提高服务器性能。 MaxKeepAliveRequests 50 该参数为最大的活连接请求数,可以根据网页实际包含的文件数目自行调节。 KeepAliveTimeout 5 该参数为活连接的超时时间,一般只要设置成小于Timeout即可。 这样设置后,Apache在响应请求和防止恶意攻击方面就取得较为平衡的效果,当然由于内存回收机制和进程管理不同,Windows下长期运行 Apache还是不如Unix稳定,因此我们可以让Apache在每天凌晨访问人数少时自动重启一次,以回收资源。用Windows自带的计划任务就可以 简单的实现。这样,我们就使Apache在Windows平台下像Unix一样长期稳定的提供服务了。 【windows下apache及mysql定时自动重启&服务器定时自动重启】 有时候觉得,服务器运行时间过长,造成服务器内存等压力过大。因此,不用重新启动服务器的情况下,完成apache和mysql的内存释放,是非常有益处的(把重启时间设置在访问量最低的)。 首先,apache的重新启动。有两种apache自动定时重启的方法(两种,第二种可一同时启动apache和mysql,所以推荐一下第二种): 第一种、使用任务计划 开始>>程序>>附件>>管理工具>>任务计划 添加任务计划>>下一步>>apache restart>>选择时间(可以设置的为每天凌晨2-4点)>>一路确定即可。 第二种(个人觉得比较简单,同样也是任务计划) 采用at命令添加计划任务1、在c:盘根目录新建一个apacheautostart.bat文件,然后右键编辑,将文件内容设为如下后保存: @ECHO OFF net stop apache2 net start apache2 net stop mysql net start mysql (附加说明:上面的apache2与mysql为服务名称。) 2、“开始”-》运行“cmd”-》执行命令“at 04:00 c:\apacheautostart.bat” 这样每天早晨4点系统就会自动重启apache与mysql (附加说明:04:00为重启时间,c:\autostartserver.bat为第一步的bat文件地址) mysql的重新启动,也通过上面at命令方法重新启动了,所以推荐一下第二种方法。 ——————————————————————————– 同样,你也可一给自己的服务器加上一个定时自动重启的功能(比如每周重新启动服务器一次)。 可以用at命令和shutdown命令配合实现。 AT命令可以安排在特定日期和时间运行命令和程序,shutdown则可以在命令行下关闭并重启计算机,要在每周日的特定时间自动重启计算机,只需 在命令提示符下输入“at 02:00 /every:星期一 shutdown /l /r /y /c”,这将在每周一的凌晨2点自动重启计算机。 有关at命令和shutdown命令的更详尽信息,请在Windows Server 2003的命令提示符下输入“at /?”和“shutdown /?”获得,或者在http://support.microsoft.com/kb/317371/zh-cn,也有微软官方知识库中的相关文章。   本文原文出处小杜没有找到,原作者如有看到,请留下网址,我会补充链接进来。 【Windows下如何开启 apache的 apache-status监控功能】:httpd.conf中,加载模块: 把 LoadModule status_module modules/mod_status.so 这句加上,如果前面有带#号,开启的话,需要将#去除,并加入: SetHandler server-status Order Deny,Allow Deny from all Allow from localhost ExtendedStatus On 这是一个完整的server-status的配置。 配置完成,重新启动apache即可(注意,不能直接restart,而要先stop,再start) 可以用http://localhost/server-status来访问,同时 http://localhostm/server-status?refresh=N将表示访问状态页面可以每N秒自动刷新一次; Deny from表示禁止的访问地址; Allow from表示允许的地址访问; ExtendedStatus On 表示的是待会访问的时候能看到详细的请求信息,另外该设置仅能用于全局设置,不能在特定的虚拟主机中打开或关闭。启用扩展状态信息将会导致服务器运行效率降低。 【补充】: 1、关于Apache参数ThreadsPerChild 和 MaxRequestsPerChild 的说明详见官方网址:http://httpd.apache.org/docs/2.2/mod/mpm_common.html 2、中文版 Apache mpM指令:http://lamp.linux.gov.cn/Apache/ApacheMenu/mod/mpm_common.html

阿里云基于centos6.5主机PPTP配置

阿里云基于centos6.5主机PPTP配置

1年前 (2016-09-21) 浏览: 21 评论: 0

安装软件 yum install -y ppp pptpd 配置 pptpd 1. 编辑配置文件 vi /etc/pptpd.conf,将如下配置: #localip 192.168.0.1 #remoteip 192.168.0.234-238 修改为: localip 192.168.0.1 remoteip 192.168.0.234-238,192.168.0.245 # 以上设置的 IP 地址: localip 192.168.0.1 和 remoteip 192.168.0.2-200 分别是 vpn 的网关地址和 vpn 拨号获取地址段。可以根据需要进行调整 即将这两行第一个字符 # 去掉,取消注释,保存退出。   2.编辑 vi /etc/ppp/options.pptpd,将如下配置: #ms-dns 10.0.0.1 #ms-dns 10.0.0.2 修改为 ms-dns 223.5.5.5 ms-dns 223.6.6.6 # 223.5.5.5 和 223.6.6.6阿里云公共 DNS 服务地址,也可以按需配置为其它公共 DNS。 即将这两行第一个字符“#”去掉,而后修改 DNS 服务器的 IP 地址。 3. 设置使用 pptp 的用户名和密码命令: vi /etc/ppp/chap-secrets 打开后只有两行,而且一个账号都没有,如下所示: # Secrets for authentication using CHAP # client server secret IP addresses 根据需要添加账号,每行一个。按照:“用户名 pptpd  密码 ip地址” 的格式输入,每一项之间用空格分开,例如:test pptpd 123456   (表示所有IP),保存并退出。 4. 设置 MTU 大小 $ vi /etc/ppp/ip-up ..... [ -x /etc/ppp/ip-up.local ] && /etc/ppp/ip-up.local "$@" # 这行后面增加如下内容: ifconfig ppp0 mtu 1472 修改内核设置以支持数据转发 1. 编辑配置文件 vi /etc/sysctl.conf 将 net.ipv4.ip_forward=0 改成 net.ipv4.ip_forward=1 保存并退出。然后执行以下命令使修改后的参数生效 sysctl -p 2. 添加 iptables 转发规则 iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j MASQUERADE 添加好转发规则后,使用如下命令保存设置并重启防火墙 /etc/init.d/iptables save /etc/init.d/iptables restart 服务配置 1. 重启 pptp 服务 /etc/init.d/pptpd restart 注意:其实此时 pptp 还没运行起来,所以使用 restart 重启,会显示 Shutting down pptp [FAILED]。还会有一个警告,可以忽略。如不放心可以再用以上命令重启 pptp 服务,相关告警信息就会消失。 2. 设置 pptp 和 iptables 自启动: chkconfig pptpd on chkconfig iptables on 至此,PPTP VPN 服务端安装结束。在本地计算机"网络和共享中心",设置新的连接或网络,即可访问 VPN。   CentOS PPTP VPN客户端配置 1. 安装软件包 yum install -y ppp pptp pptp-setup 2. 连接 VPN 服务端 pptpsetup --create test --server IP--username 用户名 --password 密码 --encrypt --start # IP、用户名、密码替换为VPN服务端实际配置的值 连接成功后,提示已经被分配了 192.168.0.234

阿里云 CentOS 6.5安装mysql

阿里云 CentOS 6.5安装mysql

1年前 (2016-07-26) 浏览: 5 评论: 0

查看是否安装mysql rpm -q mysql 安装mysql yum install mysql mysql-server -y 查看mysql 安装信息 rpm -qi mysql 启动mysql服务 service mysqld start 设置mysql 密码 mysqladmin -u root password '123456' 连接mysql mysql -u root -p chkconfig 查看启动列表 设置开机启动mysql chkconfig mysqld on 235 开启3306端口并保存 /sbin/iptables -I INPUT -p tcp –dport 3306 -j ACCEPT /etc/rc.d/init.d/iptables save 修改mysql密码 use mysql; update user set password=password('123456') where user='root'; flush privileges; 设置Mysql远程访问 1.改表法 use mysql; update user set host = '%' where user = 'root'; 2. 授权法 'root'为授权角色,'%'为授权IP,'123456'为授权角色的密码 grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option; flush privileges; 设置编码,编辑/etc/my.cnf [mysqld] default-character-set = utf8 character_set_server=utf8

云服务器 ECS CentOS 6.5 系统下 Nginx 配置 https 服务

云服务器 ECS CentOS 6.5 系统下 Nginx 配置 https 服务

2年前 (2016-04-21) 浏览: 17 评论: 0

linux 搭载nginx环境,应该是试下最流行的做法。nginx作为新于Apache的运行环境,具有占用更低,并行运行更多等优势。 Nginx ("engine x") 是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器。Nginx是由Igor Sysoev为俄罗斯访问量第二的Rambler.ru站点开发的,第一个公开版本0.1.0发布于2004年10月4日。其将源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。2011年6月1日,nginx 1.0.4发布。 1. 在配置 nginx 时,可能会依赖于 PCRE 包和 zlib 包,先进行安装: # yum -y install pcre pcre-devel # yum install -y zlib-devel 2. 下载 nginx # wget http://nginx.org/download/nginx-1.6.2.tar.gz 3. 解压缩 # tar -xvzf nginx-1.6.2.tar.gz 4. 配置nginx # ./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_gzip_static_module --with-http_ssl_module --with-openssl=/usr/local/openssl-0.9.8zg 注意: 这里 /usr/local/openssl-0.9.8zg 指的的是 openssl 的源码包,不是编译安装好的 openssl, 否则在执行 make 时会出错。 # make # make install 5. 使用 openssl 生成证书 # openssl req -new -x509 -nodes -out server.crt -keyout server.key 生成证书时,请根据自己的需要填写信息:   6. 修改 nginx 配置文件: # vi /usr/local/nginx/conf/nginx.conf 添加如下内容: server { listen 443 ssl; server_name localhost; ssl_certificate server.crt; ssl_certificate_key server.key; ssl_session_cache shared:SSL:1m; ssl_session_timeout 5m; ssl_ciphers HIGH:!aNULL:!MD5; ssl_prefer_server_ciphers on; location / { root html; index index.html index.htm; } }   7. 启动 nginx: # /usr/local/nginx/sbin/nginx 8. http方式访问测试示意: 9. https 方式访问示意: 至此nginx配置https就完成了。  

EX-Cloud、Linode、Conoha、Vultr日本几大VPS主机商对比

EX-Cloud、Linode、Conoha、Vultr日本几大VPS主机商对比

2年前 (2016-02-25) 浏览: 56 评论: 0

由于项目的因素以及各种政策原因,我们无论是建站用途,还是项目、系统及成本的需求,我们会较多的选择海外主机、VPS或者服务器产品。但是,由于项目的面对用户如果是中文用户话,我们可能会尽可能的选择和使用亚洲节点的数据中心,由于香港等地区的带宽较小且升级带宽成本较大,我们很多用户会寻找日本等地区的主机商。 如果真的要去寻找提供日本VPS主机商家还是比较多的,但是大部分本土商家都局限本土用户,并不出售给非本土用户,尤其可能很多主机商比较"讨厌"中国用户,比如在上半年的时候IDCF商家基本上清理掉所有的中国用户(或许还有部分侥幸用户存在)。老蒋之前有在"体验Linode、Vultr、ConoHa三个日本VPS主机性能速度和各自特点优势"文章中有整理到目前和曾经有在使用的这三家有日本机房的商家。 时隔几个月,目前Linode商家1号日本已经不提供,新出来日本东京2号机房,以及ConoHa商家经常变动线路也不是那么稳定,同时在前一段时间老蒋又接触到也一个在尝试进入中国市场迎合中国用户的EX-Cloud商家。无论我们是否有需要,以及对于这些商家的口碑和体验使用,准备用这篇文章分别对这4个有提供日本VPS/机房的商家和产品再做一个总结性的测评。 第一、商家背景和现状 1、EX-Cloud EX-Cloud商家率属于NHN Techorus旗下的主机品牌之一,我们了解的并不是很多主要原因在于原来与大部分日本主机商一样仅限在本土销售。这应该是看中市场的趋势和本土同行的发展方向拓展中国用户群,商家开始有意的偏向中国用户的营销,比如提供简体中文语言界面,其成本也并不是很高,低至756日元/月(折合45元RMB左右)。 2、Linode Linode商家我们应该相当熟悉,从当初所谓的高富帅(价格真高)VPS提供商,现在价格大部分用户都可以接受,而且每年都在有配置、价格上的惊喜。虽然随着用户量的增加,原本15分钟内的TK回复有些时候需要等到几个小时,这个与用户量还是有关系的。由于日本1机房的资源匮乏,然后根据既定计划在12月份上线日本2号机房。 3、Vultr Vultr商家的不断搅局,在一定程度上对如今VPS市场价格和配置性价比的是有一定影响的。9月份的时候又上线新加坡机房,目前为止已经有15个机房。其日本机房之前绕道美国的,如今改成NTT线路,从速度上看比之前绕美国是好一些,但是晚上有些地区的丢包还是有的。 4、ConoHa ConoHa商家起家得益于针对中国市场的营销,提供日本、新加坡2个亚洲机房,不过最近一年左右时间发展并不是很好,仅仅是借助当初的营销渠道和口碑在消耗。实际上ConoHa商家的线路已经不如以前,比如日本机房绕道、以及老蒋手上原本有一台新加坡机器的,已经从监控中看到线路绕道超过3个月时间。原本可以自定义安装Windows系统的功能,由于API不稳定,已经有不少用户反馈无法安装。 第二、对比4商家产品配置和价格 对于我们大部分中国用户而言,较多的会先直接从价格着手考虑,如果 价格过高可能就打消考虑的年头,如果价格还不错或者便宜,那就比较有兴趣了解。所以,老蒋在分享这四家提供日本VPS的商家测评之前,先把他们几家的价格和配置对比整理出来,这样我们也有一个直观的了解。 从上图中我们可以直观的看到4个商家的配置、价格对比,EX-CLOUD和CONOHA是税前价格,税后一共前者大约需要45元RMB左右,后者大约需要60元RMB左右。 第三、4个商家速度、线路对比 老蒋虽然并不是使用VPS主机的大户,但是接触和实际用的VPS商家产品也还算比较多的,价格我认为差距并不是很大,毕竟配置都有所差异。唯独我们需要考虑的就是线路的稳定性,即便再便宜,速度很差,送给我们都不要。 1、EX-Cloud A - Ping速度测试 B - 路由跟踪 2、Linode A - Ping速度 B - 路由跟踪 3、Conoha A - Ping速度测试 B - 路由跟踪 4、Vultr A - Ping速度 B - 路由跟踪 第四、EX-Cloud、Linode、Conoha、Vultr日本机房小结 1、提供日本VPS主机商的商家还有很多,这里仅仅是老蒋曾经和最近接触到的4家,然后整理出来的最近的性能和速度记录; 2、除了EX-CLOUD商家外,其他三家都是走的NTT线路,从数据上看整体的PING并没有多少的区别,但是我们可以看到同样是NTT线路的三家,VULTR和CONOHA丢包就比LINODE多一些。 3、从价格上看EX-CLOUD有一些优势,唯独目前购买需要用双币信用卡,预计以后会有支持PAYPAL等付款方式。同时老蒋需要提醒的是目前EX-CLOUD不支持重装系统,我们要么开始就选择好,以及后面可以用恢复功能复原系统,这个着实不是很方便,希望改进。 4、Conoha商家新加坡已经彻底的绕道,自定义安装WINDOWS API不是很稳定,已经不少用户反馈无法安装,尤其是这个商家机器不能有任何被攻击行为,会导致账户被锁定风险。 5、Linode日本2号机房实际的测试和体验并不如他们原来的1号机房,不过1号机房目前断货。

使用htaccess判断浏览器语言然后跳转

使用htaccess判断浏览器语言然后跳转

2年前 (2015-07-11) 浏览: 16 评论: 0

判断浏览器语言并实现跳转。国内大部分人使用的浏览器是中文,为了区分浏览人群——国内大部分网站,为中文和英文两种语言。 323 RewriteCond %{HTTP:Accept-Language} ^zh-cn.*$ [NC] RewriteRule ^/?$ http://www.yourdomain.com/error.php [R=301,L] # BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] RewriteCond %{HTTP:Accept-Language} ^zh-cn.*$ [NC] RewriteRule ^/?$ http://www.theotherlink.com/ [R=301,L] </IfModule>

登录

忘记密码 ?

您也可以使用第三方帐号快捷登录

切换登录

注册