博客小站启用静态化
我本人对网站速度要求不高,通常页面打开耗时只要不超过10秒,我都不会介意。但自己博客最近出了几次事让我有点郁闷,一次是因为攻击导致资源消耗过高,博客被网管强制停机。另一次是因为谷歌字体的某些问题,导致所有页面打开之后迟迟无法加载完毕。虽然之后找了360网站卫士做庇护,但终归不是长久之计,将网站静态化的想法冒了上来。
我以为玩独立博客上了些年头的站长们都应该懂什么叫静态化的,见昨天方室网志的阿福对此还不明所然。我在此解释一下,类似Wordpress的网站(依赖数据库的网站)展现一个页面,需要后台的从收到请求开始——从数据库抽取文章、评论等数据——数据交给服务器的PHP模块合成标准格式网页文件——传网页文件送至客户端渲染。客户端渲染之后才是我们看到的网页。其中影响网站打开速度的环节主要:主机数据库性能、主机PHP模块合成网页文件的速度。带宽也有一定影响,但考虑到个人博客通常都是一些文字信息,文件不多,这点影响不大。
所谓网站静态化,就是提前将网页合成,存在临时仓库。访客有请求的时候直接从仓库拿出传送,不用再到后方数据库、PHP生产车间匆匆忙忙“制造”网页。这极大提高了博客响应速度,缺点是网页上有如文章阅读次数、最新评论留言等动态信息时,静态缓存需要额外的JS才能实现实时更新,好在最新的插件都能给出很好的解决方案。
WordPress静态化之后,与Jekyll等纯静态博客的区别。在我看来纯静态博客完全不需要数据库,是本地生成标准格式网页之后,上传空间就OK了。而Wordpress的静态化是由服务主机生成网页,静态后速度性能对比,Jekyll之类的纯静态网站快是毋庸置疑。而Wordpress则要看具体静态的方式。就我使用的WP Super Cache这个插件来说,如果使用了推荐的mod_rewrite 缓存模式,通过写入htaccess配置,调节好参数,缓存文件生成之后,性能对比来说相差不大。纯静态博客缺点是无法支持评论,要实现评论得依赖第三方服务(这意味着博主无法自由管理访客留言)。而Wordpress静态化之后,有评论提交会自动刷新缓存,两者对比各有千秋。
网上有很多关于Wordpress伪静态的文章,甚至有说WP Super Cache并非真静态,而后又介绍其他可以实现真正静态的插件。在我看来这些都是概念混淆,目的为了推广其他静态化插件罢了。伪静态只不过是修改了文章固定链接,现在主机一般都会支持,但固定链接格式对性能没啥影响,说白了还是等于没有静态。说什么真静态,Wordpress与纯静态博客本来就是两个不同的东西,无法相提并论。但WP Super Cache作为Wordpress官方团队出品的静态化插件,无论是性能、个性配置,支持力度上都毋庸置疑。说它并非真静态的,只能说是那个家伙非但自己不懂,还要混淆视听,对此我只能呵呵!
WP Super Cache也不是没有缺点,总的来说它门槛有点高,故网上很多建议小流量博客不推荐使用。因为配置不好,效果打折不说,卸载起来还会牵扯到htaccess以及wp-config.php。总的来说比较麻烦,说白就是技术不到家的话,用了吃力未必能讨好。倘若用对了,博客速度就能有质的提升,其中利害掂量得看各位自己了。
使用方法,网上教程很多,我只给出提醒要注意的地方。
一、保证wp-content目录有读写权限,同时,保证Wordpress根目录的wp-config.php和.htaccess文件也有写入权限,最好全站程序备份一次。
二、你安装激活之后可以首先启用插件的测试,如果提示:页面不相符!时间戳有差异或者不存在!说明缓存没有生效。这时候就需要检查插件或则主题是否有冲突。检查办法就是排除法。先将其他插件全部停掉再测试,或则换回官方主题再测试。缓存生效的页面源代码底部是有如“Cached page generated by WP-Super-Cache on 2016-05-02 09:42:42”字样标注该静态页面生成时间。
特别提醒:这里换官方主题,指的是未经修改过的默认主题。有些朋友会自己修改主题,但是增加的某些代码可能是导致这个问题的原因。已经确认了是自己之前使用的主题的问题,那需要切换回之前的主题,并仔细检查主题的所有文件。尤其需要注意的是functions.php,header.php等文件。查看文件之中是否包含有压缩功能的函数;或者不正确使用的PHP的ob_start函数。可以通过搜索zip或者ob_start等关键词进行搜索。搜索之后,可以先尝试屏蔽(或者删除,删除之前请做好备份)相应代码,然后重新进行测试缓存功能(记得先删除原来的缓存)。
三、插件能正常启用的话,就是开始下面的配置了。首先是启用推荐的mod_rewrite 缓存模式。如果主机不支持的话启用PHP 缓存模式也可,普通模式就不推荐了。启用之后,在高级选项卡里边,推荐配置是
1、当有新文章或页面的发布或更新时清除之前的缓存文件。(这个选项一定要取消勾选。否则一旦发布新文章,以前的所有的缓存文件都会消失不见,非常影响网站访问速度和SEO效果。)
2、移动设备支持。(使用自适应主题的这个可以取消勾选,否则缓存里会多出大量不必要的mobile.html之类的缓存文件。为手机页面单独设置了主题的就可以勾选。)
3、压缩页面以便让来访者更快浏览。(网站支持压缩的话,就勾选吧。谁不喜欢速度快的网站呢?但要注意,部分主机虽然也支持,但勾选之后,预缓存生成会连续失败,还出现网站首页第一次访问会空白等等,总之就是有点小问题。所以此项必须谨慎)
4、不要为已知用户缓存。(最好不要勾选。因为已知用户也需要生成和读取缓存,总之有缓存最好了!)
5、让已知用户匿名使他们浏览的内容是缓存文件。(勾选。原理同上,一切以缓存为中心。)
6、当某页面有新评论时,只刷新该页面的缓存。(勾选。否则的话,来一个评论就刷新所有页面的缓存,真的太费劲了。)
7、设置对“搜索”页面以及“feed”订阅页面设置排除在外。免得每次搜索都激活一个缓存页面,很浪费空间。
四、开启预缓存,勾选预缓存模式并立即加载预缓存。这样不管有无访问激活,都可以给所有公开网页生成静态页面备用。至于缓存过期时间,对个人博客而言我建议是设置为0,禁用缓存过期。
最后,插件本身也支持CDN,使用了七牛加速服务的可以考虑配置。如果不想让静态网页文件通过七牛的,也请留心排除html等对应的静态化网页文件。

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











Laravel은 직관적 인 플래시 방법을 사용하여 임시 세션 데이터 처리를 단순화합니다. 응용 프로그램에 간단한 메시지, 경고 또는 알림을 표시하는 데 적합합니다. 데이터는 기본적으로 후속 요청에만 지속됩니다. $ 요청-

PHP 클라이언트 URL (CURL) 확장자는 개발자를위한 강력한 도구이며 원격 서버 및 REST API와의 원활한 상호 작용을 가능하게합니다. PHP CURL은 존경받는 다중 프로모토콜 파일 전송 라이브러리 인 Libcurl을 활용하여 효율적인 execu를 용이하게합니다.

Alipay PHP ...

Laravel은 간결한 HTTP 응답 시뮬레이션 구문을 제공하여 HTTP 상호 작용 테스트를 단순화합니다. 이 접근법은 테스트 시뮬레이션을보다 직관적으로 만들면서 코드 중복성을 크게 줄입니다. 기본 구현은 다양한 응답 유형 단축키를 제공합니다. Illuminate \ support \ Facades \ http를 사용하십시오. http :: 가짜 ([ 'google.com'=> 'Hello World', 'github.com'=> [ 'foo'=> 'bar'], 'forge.laravel.com'=>

고객의 가장 긴급한 문제에 실시간 인스턴트 솔루션을 제공하고 싶습니까? 라이브 채팅을 통해 고객과 실시간 대화를 나누고 문제를 즉시 해결할 수 있습니다. 그것은 당신이 당신의 관습에 더 빠른 서비스를 제공 할 수 있도록합니다.

기사는 PHP 5.3에 도입 된 PHP의 LSB (Late STATIC BING)에 대해 논의하여 정적 방법의 런타임 해상도가보다 유연한 상속을 요구할 수있게한다. LSB의 실제 응용 프로그램 및 잠재적 성능

이 기사에서는 프레임 워크에 사용자 정의 기능 추가, 아키텍처 이해, 확장 지점 식별 및 통합 및 디버깅을위한 모범 사례에 중점을 둡니다.

기사는 입력 유효성 검사, 인증 및 정기 업데이트를 포함한 취약점을 방지하기 위해 프레임 워크의 필수 보안 기능을 논의합니다.
