- 博客(82)
- 资源 (2)
- 收藏
- 关注
原创 PHP如何解决网站大流量与高并发的问题
首先,确认服务器硬件是否足够支持当前的流量。普通的P4服务器一般最多能支持每天10万独立IP,如果访问量比这个还要大, 那么必须首先配置一台更高性能的专用服务器才能解决问题,否则怎么优化都不可能彻底解决性能问题。其次,优化数据库访问。前台实现完全的静态化当然最好,可以完全不用访问数据库,不过对于频繁更新的网站, 静态化往往不能满足某些功能。缓存技术就是另一个解决方案,就是将
2013-09-15 19:46:02 1148
原创 ThinkPHP 中M方法和D方法的具体区别
M方法和D方法的区别ThinkPHP 中M方法和D方法都用于实例化一个模型类,M方法 用于高效实例化一个基础模型类,而 D方法 用于实例化一个用户定义模型类。使用M方法如果是如下情况,请考虑使用 M方法:对数据表进行简单的 CURD 操作而无复杂的业务逻辑时只有个别的表有较为复杂的业务逻辑时,将 M方法 与实例化 CommonModel 类进行结合使用M方法
2013-10-16 11:47:20 887
原创 PHP 面试宝典
php1、表单中 get与post提交方法的区别?答:get是发送请求HTTP协议通过url参数传递进行接收,而post是实体数据,可以通过表单提交大量信息.2、session与cookie的区别?答:session:储存用户访问的全局唯一变量,存储在服务器上的php指定的目录中的(session_dir)的位置进行的存放 cookie:用来存储连续訪問一个頁面时所使用,是
2013-09-27 16:36:04 3663
原创 sphinx全文检索之PHP使用教程
以上一篇的email数据表为例:数据结构:view sourceprint?01.CREATETABLE email (02.emailid mediumint(8) unsignedNOT NULL auto_increment COMMENT '邮件id',03. 04.fromidint(10) unsigned NOT
2013-09-27 10:58:42 960
原创 PHP中文汉字验证码
hb.ttf换成随便你自己下载的ttfHeader("Content-type: image/PNG");$str="的一是在了不和有大这主中人上为们地个用工时要动国产以我到他会作来分生对于学下级就年阶义发成部民可出能方进同行面说种过命度革而多子后自社加小机也经力线本电高量长党得实家定深法表着水理化争现所二起政三好十战无农使性前等反体合斗路图把结第里正新开论之物从当两些还天资事队批如应
2013-09-27 10:51:21 1159
转载 面向对象和面向过程的区别
面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了。 面向对象是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为。例如五子棋,面向过程的设计思路就是首先分析问题的步骤:1、开始游戏,2、黑子先走,3、绘制画面,4、判断输赢,5、轮到白子,6、绘制画面,7、判断输赢,8
2013-09-26 14:32:46 737
原创 MySQL数据库优化漫谈
1.表设计 遵循三范式,但必要的时候做数据冗余,举例说明:在权限模型中可能会用到5张表 用户表、角色表、权限表,还有用户角色关联表和角色权限关联表。如果此时要通过用户查询权限则必须关联查询或者使用多条sql查询,此时可以在用户表增加一个字段来存储用户的权限(例如将权限值使用逗号隔开),这样可以如果查询某用户的权限可以直接在用户表中查询,查询后再用程序来处理。 设计表时要选用
2013-09-24 19:10:09 720
原创 Apache——Rewrite重写规则
1、Rewrite规则简介:Rewirte主要的功能就是实现URL的跳转,它的正则表达式是基于Perl语言。可基于服务器级的(httpd.conf)和目录级的(.htaccess)两种方式。如果要想用到rewrite模块,必须先安装或加载rewrite模块。方法有两种一种是编译apache的时候就直接安装rewrite模块,别一种是编译apache时以DSO模式安装apache,然后再
2013-09-23 16:15:49 1221
原创 最常见的6种网站流量统计工具介绍
1、CNZZ 服务统计由国际著名风险投资商IDG 投资的网络技术服务公司,是中国互联网目前最有影响力的免费流量统计技术服务提供商,专注于为互联网各类站点提供专业、权威、独立的第三方数据统计分析。同时,CNZZ 拥有全球领先的互联网数据采集、统计和挖掘三大技术,专业从事互联网数据监测、统计分析的技术研究、产品开发和应用,这也是笔者所使用的统计工具,感觉用起来比较不错。2、51Yes 网站
2013-09-23 15:44:55 4178
原创 php 获取今日、昨日、上周、本月的起始时间戳和结束时间戳的方法
php 获取今日、昨日、上周、本月的起始时间戳和结束时间戳的方法,主要使用到了 php 的时间函数 mktime。下面首先还是直奔主题以示例说明如何使用 mktime 获取今日、昨日、上周、本月的起始时间戳和结束时间戳,然后在介绍一下 mktime 函数作用和用法。//php获取今日开始时间戳和结束时间戳$beginToday=mktime(0,0,0,date('m'),date('d'
2013-09-22 21:24:32 764
原创 Mysql数据库备份的几种方法
数据备份是一个网站能够正常运营的保障,数据备份包括网站源码备份和数据库备份,如果你使用的是ACCESS数据库,那么直接使用FTP下载数据库文件就可以了,但如果你使用了PHP+MYSQL进行网站建设,数据库备份就没有那么容易了。下面介绍几种mysql数据库备份的方法。工具/原料FTP,ACCESS,PHPMYADMIN,SQLyogEnt
2013-09-22 19:40:32 1287
原创 系统优化设置
一、系统属性设置1、禁用闲置的IDE通道右键点击“我的电脑-属性”--“硬件”--“设备管理器”,在其中打开“IDE ATA/PATA控制器”然后分别进入主要和次要IDE通道,选择“高级设置”,将“设备类型”设置为“无”,将“传送模式”设为“DMA(若可用”。2、优化视觉效果右键单击“我的电脑”--“属性”—“高级”,在“性能”栏中,点击“设置”--“视觉效果”,调整为最佳性能;或
2013-09-22 09:22:09 1921
原创 php判断密码强度
一、php页面$score = 0;if(!empty($_GET['value'])){ //接收的值$str = $_GET['value'];}else{$str = '';}if(preg_match("/[0-9]+/",$str)){$score ++;}if(preg_match("/[0-9]{3,}/",$str)){$sc
2013-09-22 09:19:20 3177 2
原创 优秀程序员的十个优秀习惯
在这个世界上,有数百万的人热衷于软件开发,他们有很多名字,如:软件工程师(Software Engineer),程序员(Programmer),编码人(Coder),开发人员(Developer)。经过一段时间后,这些人也许能够成为一个优秀的编码人员,他们会非常熟悉如何用计算机语言来完成自己的工作。但是,如果你要成为一个优秀的程序员,你还可以需要有几件事你需要注意,如果你能让下面十个条目成为你的习
2013-09-22 09:16:58 918
原创 PHP实现即时网站截图
网站地址 (不带 http://):大小: xpx图片格式: PNG JPEG <?php$x = $_REQUEST['x'];$y = $_REQUEST['y'];$format = $_REQUEST['format'];$site = $_REQUEST['site'];$surl = 'http://0907.org/screenshot/screenshot
2013-09-22 09:15:05 2717
原创 Navicat for mysql 1130错误
用Navicat连接远程MYSQL,提示如下错误,我以为是自己的防火墙问题,但是关了,依然不行。我认为这段英文,有点误导,让人感觉是自己这边出了问题。看解决方法吧ERROR 1130: Host '192.168.1.3' is not allowed to connect to this MySQL server解决方法:1。改表法。可能是你的帐号不允许从远程登陆,只能在lo
2013-09-22 09:10:27 1135
原创 一个PHP程序员应该掌握的10项技能!
很多学PHP的人一直也搞不清楚,一个PHP程序员和Java程序员或者是.net程序员有什么不同,告诉你,其实都一样!没有什么不同,下面的内容,就是针对一个Java程序员掌握的技能对比PHP来说的!告诉你,它们其实是一样的,不过是工具而已,没有高低贵贱之分。只不过你不熟练,不知道而已!1、语法:必须比较熟悉,在写代码的时候IDE的编辑器对某一行报错应该能够根据报错信息知道是什么样的语法错误并且知
2013-09-21 20:33:19 852
原创 MySQL的优化
在配上文件上的优化:首先:根据你的内存大小来设置MYSQL下的配置文件。 在硬件上的优化: 替换有问题的硬件通常是我们的第一考虑,主要原因是数据库会占用大量资源。不过这种解决方案也就仅限于此了。实际上,您通常可以让中央处理器(CPU)或磁盘速度加倍,也可以让内存增大 4 到 8 倍。第二种方法是对 MySQL 服务器(也称为 mysqld)进行调优。对这个
2013-09-21 19:53:47 904
原创 ECshop中注册时的邮箱验证功能实现代码
1、注册成功自动发邮件并退出登录状态,提示需要验证邮件才能登录。在user.php大约233行很234行把: $ucdata =empty($user->ucdata)? "" : $user->ucdata; show_message(sprintf($_LANG['register_success'], $username .$ucdata
2013-09-21 19:49:29 2441
原创 Ecshop微博登录方式与用户账号的绑定
1.在ecs_users表中添加字段uid。2.在includes中的lib_passport.php中的 $other_key_array = array('msn', 'qq', 'office_phone','home_phone', 'mobile_phone');添加一字段'uid',即: $other_key_array = array('uid','m
2013-09-21 18:44:48 1654 2
原创 解决linux磁盘空间不足的问题
1、首先让linux处于关闭电源的状态下;2、右击你虚拟机名字,选择设置;3、在出现的界面中选择“添加(add)”,就会出现下面那个框4、选择Hadr Hisk (添加硬盘)5、接着一直选择下一步,知道出现下面这个界面这块是选择你要添加磁盘的大小,根据自己的需要添加;6、最后启动linux下面是具体添加步骤:fdisk /dev/sdb
2013-09-21 16:29:41 3115
原创 在Windows下不使用密码远程登陆Linux
在登陆Linux进行管理的时候我们通常会使用用户名和密码进行登陆,这样一来是比较麻烦,二来是不安全,为了解决这个问题,我们可以使用公私钥(public keys和private keys)进行认证。简单来说公钥存放在服务器上,私钥存放在客户端,接下来看一下配置过程,首先以root身份登录服务器。 为了能够顺利使用key进行认证,首先确定ssh服务的Pubkey认证功能是否打开,执
2013-09-17 17:12:43 811
原创 在Linux下不使用密码远程登陆其他Linux
有时需要再一台Linux上登陆其他Linux服务器,通常可以直接使用SSH命令,加入两台服务器一台服务器A,IP地址192.168.1.2,另一台服务器B,IP地址192.168.1.3,如果想从A服务器使用root用户登陆B服务器只需要在A服务器上执行/usr/bin/ssh root@192.168.1.3,提示输入正确的密码后可以顺利登陆B服务器,但是有时两台服务器之间登陆不需要密码,比如执
2013-09-17 17:12:01 746
原创 将IP以整型的方式存储到数据库中
在实现某些功能时有时会用到用户的IP地址,因为IP地址有四段,在保存到MySQL数据库中的时候可能会使用varchar(15)或者char(15),其实还有更好的方式那就是将IP地址转换成整型,这样占用空间更小,查询速度快,同时还方便比较。在数据库设计时要用无符号INT UNSIGNED,否则长度不够。下面给出主要PHP代码:php$ip = '这里是获取到的IP';echo $i
2013-09-17 17:09:25 1380
原创 mysql中的严格模式
很多集成的PHP环境(PHPnow WAMP Appserv等)自带的MySQL貌似都没有开启MySQL的严格模式,何为MySQL的严格模式,简单来说就是MySQL自身对数据进行严格的校验(格式、长度、类型等),比如一个整型字段我们写入一个字符串类型的数据,在非严格模式下MySQL不会报错,同样如果定义了char或varchar类型的字段,当写入或更新的数据超过了定义的长度也不会报错。我认为这个对
2013-09-17 17:08:43 1029
原创 整合discuz X2.5后用户免激活设置
用户在其他应用注册后切换到论坛会提示激活,这是因为用户虽然注册到了ucenter但是在discuz X2.5中仍然没有用户的数据,只要在其他应用注册时同时将用户的相关数据写入到即可,相关表有:pre_common_member 用户表pre_common_member_status 用户状态表pre_common_member_count 用户数据统计表pre_common_mem
2013-09-17 17:06:08 1162
原创 使用Lvs DR模式实现负载均衡
LVS是Linux Virtual Server的简写,意即Linux虚拟服务器,适应LVS可以构建高性能的负载均衡系统,LVS有三种模式即:LVS/NAT(网络地址转换)、LVS/TUN(IP隧道)、LVS/DR(直接路由),通常用的是DR模式,下面介绍一下DR模式的配置方式。 假设测试环境:使用虚拟IP192.168.1.243,调度机的IP地址是192.168.1.245,两台真实
2013-09-17 17:02:50 1275
原创 Apache Rewrite实现URL的跳转和域名跳转
1、Rewirte主要的功能就是实现URL的跳转,它的正则表达式是基于Perl语言。可基 于服务器级的(httpd.conf)和目录级的 (.htaccess)两种方式。如果要想用到rewrite模块,必须先安装或加载rewrite模块。方法有两种一种是编译apache的时候就直接 安装rewrite模块,别一种是编译apache时以DSO模式安装apache,然后再利用源码和apxs来安装rew
2013-09-16 18:47:55 1111
原创 使用PHP采集远程图片
当我们需要采集网络上的某个网页内容时,如果目标网站上的图片做了防盗链的话,我们直接采集过来的图片在自己网站上是不可用的。那么我们使用程序将目标网站上的图片下载到我们网站服务器上,然后就可调用图片了。 本文将使用PHP实现采集远程图片功能。基本流程:1、获取目标网站图片地址。2、读取图片内容。3、创建要保存图片的路径并命名图片名称。4、写入图片内容。5、完成。我们通过写几
2013-09-16 18:46:42 900
转载 20步打造最安全的Nginx Web服务器
Nginx是一个轻量级的,高性能的Web服务器以及反向代理和邮箱(IMAP/POP3)代理服务器。它运行在UNIX,GNU/Linux,BSD各种版本,Mac OS X,Solaris和Windows。根据调查统计,6%的网站使用Nginx Web服务器。Nginx是少数能处理C10K问题的服务器之一。跟传统的服务器不同,Nginx不依赖线程来处理请求。相反,它使用了更多的可扩展的事件驱动(异步)
2013-09-16 16:43:41 1355
原创 为php安装redis扩展模块并测试
以Linux为例,首先下载php扩展模块,地址https://github.com/nicolasff/phpredis,下载完成后首先进行解压操作tar zxvf phpredis.tar.gzcd phpredis-master//usr/local/webserver/php/bin/phpize./configure --with-php-config=/usr/local/w
2013-09-16 16:40:21 3806
原创 NoSQL数据库之mongodb的搭建
首先下载安装包 点此下载,或者到官方站http://www.mongodb.org/downloads ,选择相对应的版本下载,这里以Linux 32-bit (mongodb-linux-i686-2.2.1.tgz)为例介绍安装过程:解压缩:tar zxvf mongodb-linux-i686-2.2.1.tgz移动并重命名(请根据实际情况移动到对应目录)mv mongo
2013-09-16 15:59:55 823
原创 noSQL数据库redis的安装与测试
首先下载redis软件,官网是下载页面时http://www.redis.io/download,下载完毕后进入下载的目录执行tar zxvf redis-2.6.5.tar.gzcd redis-2.6.5make如果是32位系统,需要执行vi src/.make-settings将OPT=-O2修改为OPT=-O2 -march=i686makecd srcmake
2013-09-16 15:57:53 814
转载 [专访]从12306说起 如何构建高并发高性能网站
【IT168 专稿】2012年的春运潮造就了中国铁路客户服务中心12306网络购票系统一夜蹿红,从传统购票方式到电子商务,2012年1月1日开通的12306网络购票系统成为了铁道部改革的重要一步。但是随着12306系统的上线,各种关于12306系统的抱怨声也层出不穷,不少人抱怨网上订票系统十分“龟速” 网络运行奇慢,网页不时“崩溃”,平均刷新500次才能购到一张票,而且订票过程十分繁琐,从用户
2013-09-16 15:56:07 919
原创 windows 查看连接数命令 wc命令
netstat -an|find "121.1.2.22:80"|find /C "ESTABLISHED"
2013-09-16 15:54:41 2245
原创 20条常见的编码陷阱
不管你现在的编程技能有多么的高超,曾经你也是个亦步亦趋,不断的学习的初学者。在编程这条曲折的道路上,我想你肯定犯过一些低级的错误、遇见过一些普通的编码陷阱。本文作者跨越多个语言,为大家总结了20条常规陷阱,并提供了解决方案。JavaScript篇1.不必要的DOM操作例如下面这段代码:// anti-pattern for (var i = 0; i var li = $(
2013-09-16 15:34:18 720
原创 Sphinx+MySQL5.1x+SphinxSE+mmseg中文分词
搜索引擎架构搭建 什么是SphinxSphinx 是一个在GPLv2 下发布的一个全文检索引擎,一般而言,Sphinx是一个独立的搜索引擎,意图为其他应用提供高速、低空间占用、高结果相关度的全文搜索功能。Sphinx可以非常容易的与SQL数据库和脚本语言集成。当前系统内置MySQL和PostgreSQL 数据库数据源的支持,也支持从标准输入读取特定格式的XML数据。通过修改源代码,用户可以
2013-09-16 15:24:12 1526
转载 使用ucenter在第三方应用中实现同步注册与登录
首先到康盛官网下载UCenter 1.6.0,点此下载 下载解压安装(安装Ucenter时只需要upload目录中的文件),接下来将advanced目录下的uc_client目录和advanced/examples/目录下的api目录 include目录以及文件config.inc.php拷贝到应用(你的网站)的跟目录,文件如下图:可将config.inc.php中的代码清空,下面会提到如
2013-09-16 15:13:56 1220
原创 在linux上搭建samba服务实现与windows的文件共享
以CentOS为例介绍一下安装步骤:首先需要安装samba服务yum -y install samba接下来编辑samba配置文件进行配置vi /etc/samba/smb.conf1.设置工作组找到[global] 找到workgroup = MYGROUP这个是工作组名,为了和windows实现文件共享应该和windows同一个工作组才可以,windows默认工作组
2013-09-16 15:12:08 931
原创 主流框架ZF、TP、CI等框架的区别
Zend Framework简称ZFZF是Zend官方产品,代码严谨,采用了完全面向对象的模式,可使用命令脚本创建项目,纯PHP5环境,使用了大量的接口、异常、抽象。ZF各模块松散耦合,非常灵活。自带了非常多的library,MVC设计,比较简洁,支持多种格式的配置文件(.ini、.php、.xml),缓存功能比较强大,尤其是后端缓存支持Memcache、APC、SQLite、文件等方式;支持
2013-09-16 15:09:24 3351
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人