27

Appserv配置多站点教程

在之前的Appserv教程中,我介绍了AppServ配置与安装使用教程,Appserv作为PHP集成环境安装包,可以实现多种功能,配置Appserv实现多站点功能可方便PHP开发团队实时调试多个PHP网站,有访友向我提出怎么使用Appserv配置多站点问题,通过实践验证后,我以Appserv教程形式来作下解答。 Appserv配置多站点教程第一步:下载Appserv并安装 我下载的是Appserv-Win32-2.5.10版本,下载后直接双击并根据提示安装即可。 Appserv配置多站点教程第二步:修改Windows系统hosts文件 我的Appserv安装环境是WindowsXP,为什么首先要修改hosts文件呢?这是因为一般情况下Appserv的安装调试都是在本机上进行的,当使用Appserv配置多站点时,域名指向都是127.0.0.1,你需要对不同的域名进行映射,否则即便配置完毕也是无法访问的,除非你有公网IP,并通过DNS进行映射。 找到WINDOWS\system32\drivers\etc\hosts文件并打开,找到127.0.0.1  localhost,并添加需要映射的测试站点域名,比如 1 2 3 127.0.0.1  www.leapsoul.cn 127.0.0.1  www.phptest.cn 保存hosts文件 Appserv配置多站点教程第三步:修改Apache配置文件,启用虚拟主机配置 在Appserv安装目录中找到Apache2.2\conf目录,打开apache配置文件httpd.conf,找到# Virtual hosts将 1 #Include conf/extra/httpd-vhosts.conf 中的#去除。 由于Appserv配置中Apache配置是以定制方式存在,上述语句代表Apache启用虚拟主机配置。同时Appserv多站点配置功能是以虚拟主机的方式实现,你可以一并将httpd配置文件中的 1 #LoadModule vhost_alias_module modules/mod_vhost_alias.so #去除(经过我的测试,其实此Apache Module加不加载没太大关系) Appserv配置多站点教程第四步:修改Apache虚拟主机配置 打开conf/extra/httpd-vhosts.conf配置文件,文件中本身存在两条虚拟主机配置记录,只要稍作修改即可。 将ServerAdmin(邮件地址)、DocumentRoot(网站根目录,我设定的目录为”C:/AppServ/www/wwwleapsoulcn/”和C:/AppServ/www/wwwphptestcn/) 、ServerName(站点域名信息)、ServerAlias(站点域名别名)配置选项设置为你需要设定的信息即可。Appserv配置多站点实例如下 1 2 3 4 5 6 … Read More

Reading More >>

Posted in 服务器配置 | Leave a comment
14

Apache VirtualHost配置成功/Wamp虚拟主机配置

今天终于把Apache的“虚拟主机”配置的问题解决了。 网上关于Apache VirtualHost部分的不少,但是基本上都是有问题的,所以我得把配置过程记录下来。 系统环境,Windows Server 2003 SP2,WAMPServer 5_1.7.4,Apache 2.2.6。 编辑httpd.conf,查找Include conf/extra/httpd-vhosts.conf,把前面注释符号“#”删掉。 编辑httpd-vhosts.conf,我把WAMPServer安装在D:/wamp,所以我这里的路径是D:\wamp\Apache2\conf\extra。 把里面的内容清空掉,换成下面的内容: NameVirtualHost *:80 ServerName xxxxxxxxx.cn ServerAlias www.xxxxxxxxx.cn DocumentRoot d:/www/www ServerName beta.gx.cn ServerAlias www.beta.gx.cn DocumentRoot d:/www/beta.gx.cn/ ServerName test.xxxxxxxxx.cn ServerAlias www.test.xxxxxxxxx.cn DocumentRoot d:/www/test.xxxxxxxxx.cn/ 说明一下,NameVirtualHost *:80和中 的*为当前服务器IP,如果有固定IP可以用IP把*替换掉,我这里使用的是动态IP,所以用*,我看apache帮助文档的时候,一直认为这里的*为对 应的域名,这个想法应该是错误的,因为我填上域名的时候一直没有设置成功。ServerName这个填域名,DocumentRoot填 ServerName上域名对应的根目录。 这时候访问域名会出现403权限错误,我的D盘用的是NTFS,对应的文件夹everyone的权限都是全部控制,所以不存在系统权限的问题。 问题出在httpd.conf上。 … Read More

Reading More >>

Posted in 服务器配置 | Leave a comment
09

在生产环境中使用 php 性能测试工具 xhprof

xhprof是facebook开源出来的一个php性能测试工具,也可以称之为profile工具,这个词不知道怎么翻译才比较达意。跟之前一直使用的 xdebug相比,有很多类似之处。以前对xdebug有一些记录还可以供参考,但是它的缺点是对性能影响太大,即便是开启了 profiler_enable_trigger参数,用在生产环境中也是惨不忍睹,cpu立刻就飙到high。 而xhprof就显得很轻量,是否记录profile可以由程序控制,因此,用在生产环境中也就成为一种可能。在它的文档上可以看到这样一种用法: 以万分之一的几率启用xhprof,平时悄悄的不打枪。 1 2 3 4 if (mt_rand(1, 10000) == 1) { xhprof_enable(XHPROF_FLAGS_MEMORY); $xhprof_on = true; } 在程序结尾处调用方法保存profile 1 2 3 4 5 6 7 if ($xhprof_on) { // stop profiler $xhprof_data = xhprof_disable();   // save … Read More

Reading More >>

Posted in PHP | 2 Comments
12

分享Dede自定义模型联动类别调用及修改方法

自定义联动类别怎么用,自己就改了改..现在可以用了 把方法分享一下…不对的地方请大家帮助改正。 先修改 include\taglib\infolink.lib.php 文件 require_once(DEDEROOT.’/data/enums/infotype.php’); 下面添加 require_once(DEDEROOT.’/data/enums/自定义联动类别字段名.php’); function lib_infolink(&$ctag,&$refObj) { global $dsql,$nativeplace,$infotype,$自定义联动类别字段名,$hasSetEnumJs,$cfg_cmspath,$cfg_mainsite; global $em_nativeplaces,$em_infotypes,$em_自定义联动类别字段名s; //看清楚,这里后面的个S $fields = array(‘nativeplace’=>”,’infotype’=>”,’自定义联动类别字段名’=>”,’typeid’=>$typeid, ‘channelid’=>$channelid,’linkallplace’=>”,’linkealltype’=>”,’linkeall自定义联动类别字段名’=>”); $fields['nativeplace'] = $fields['infotype'] = $fields['自定义联动类别字段名'] = ”; $fields['linkalltype'] = “<a href=’{$baseurl}plus/list.php?channelid={$channelid}&tid={$typeid}&nativeplace={$nativeplace}’>不限</a>”; //下面添加一行 $fields['linkeall自定义联动类别字段名'] = “<a href=’{$baseurl}plus/list.php?channelid={$channelid}&tid={$typeid}&自定义联动类别字段名={$自定义联动类别字段名}&nativeplace={$nativeplace}’>不限</a>”; 搜索 if(is_array($ctp->CTags)) 在这句上面添加 //自定义联动类别字段链接 … Read More

Reading More >>

Posted in PHP | Leave a comment
09

几款PHP CMS介绍

PHPCMS http://www.phpcms.cn/ phpcms 2.0 由原9466article升级升级更名而来,是一个可以全站生成html的综合网站内容管理系统,能适应大中型网站的需求。 目前PHPCMS以新闻文章管理系统为主,同时有公告管理、友情链接管理、数据库管理、语言管理、风格模板管理、用户管理、JS文件管理等小的辅助功能模块。PHPCMS集多功能于一体让用户实现在线可视化管理网站,因此安装和使用PHPCMS无须专业知识。 [主要功能] 1、全站生成html,减轻服务器负载,提高访问速度,更容易被搜索引擎收录,是大中型站点的必然选择。 2、多语言支持,语言包与程序分离,目前默认支持简体中文、繁体中文和英文三种语言,用户还可以自己添加其他语言,前后台可以设置不同的语言界面。 3、多数据库支持,目前默认支持mysql数据库,我们在后期会逐步加入其他数据库支持 4、多模板支持,各栏目和专题都可选用不同的模板,而且全部从后台控制。 5、多风格支持,每种模板又可具有不同的色调风格,各栏目和专题都可选用不同的色调风格,而且全部从后台控制。 6、采用ewebeditor正版在线编辑器,具备frontpage和dreamweaver的绝大部分常用功能,支持数学公式,支持艺术字,支持各种文件的上传和插入 7、多管理员,可自由划分权限 8、支持无限级分类,满足各种不同的应用需求 9、栏目控制参数非常多,比如可设置是否允许发表评论、外部连接、是否开放、栏目模板、栏目风格等等 10、支持回收站,可避免很多误操作造成的不必要的损失 11、支持专题设置,可随时根据需要开设不同的专题,而且可锁定过期专题,锁定后该专题就不会出现在发表文章的专题列表里(在专题非常多的时候很有用) 12、支持公告,可设置有效期,过期后不再显示 13、支持友情链接,既可后台填加也可前台申请,支持JS远程调用以应用于其他的系统 14、支持广告管理,可自由填加广告位,自由发布图片、FLASH、文字和代码广告,可随时全面控制整个网站的广告 15、支持数据库备份,可同时备份到服务器和本地计算机,以确保安全 16、支持文章、公告、友情链接和广告管理的纯静态型JS调用,并且可以在线设置JS的相关参数 17、升级支持,智能化升级提示保证随时了解并升级到最新版本信息,后期我们还会增加智能化网络自动安装和升级支持,完全在线操作无需FTP即可实现安装和升级。 18、可在线导入新的模板和风格,在线编辑模板和风格 19、后台全傻瓜式控制整个网站,一旦安装成功后即可在线管理而无须FTP或者另做网页 20、支持文章自动分页和手动分页 21、支持投稿、评论、搜索 22、支持栏目、文章等各种批量操作 23、支持自动获取远程图片 24、支持图片文章,还可根据文章参数的设置文章的标题样式 25、支持文章审核、置顶、推荐 26、支持web发送email给好友推荐文章给站长留言 织梦内容管理系统 http://www.dedecms.com/ 织梦内容管理系统特点: 1、基于PHP+MySQL的技术构建,支持全生成静态文章和文章列表,加速你的网站访问速度,增强搜索引擎优化; 2、强大的后台管理,权限分为网络管理员、频道编辑、信息采编三种,完全适应各种中小型政府网站、个人网站和普通企业网站的应用; 3、可任意设置文章的浏览权限,支持会员在线申请为不同级别的权限; 4、定义了针对不同类型内容的各种向导,包括:普通文章向导、专题创建向导、图集发布向导、软件下载向导和Flash向导; … Read More

Reading More >>

Posted in PHP | Leave a comment
09

30个基于jQuery的日期时间选择插件

1. Create astonishing iCal-like calendars with jQuery 下面的教程是教你如何制作像iPhone那样的日历应用程序。 Download Now | View Example 2. BlueShoes JS DatePicker Component 这个日期选择器能让用户非常方便地从下拉框中选择正确格式的日期。我们不用担心日期的格式,因为选完后它的格式总是正确的。 Download Now | View Examples 3. Calendar – A Javascript class for Mootools 这个日历是一个JavaScript类,增加了方便和不显眼的日期采摘到您的表单元素。这个类我已经应用和实施了多年,并已完全用Mootools重写。我试图包括所有已最有用的功能,同时简化类本身来保持尽可能小。使用下面的链接,看看有什么功能可以用在日历上,以及它如何可能提高可达性,可用性和网站上的表单元素的验证。 Download Now | View Example 4. jQuery Calendar Widget Plugin jQuery的日历组件插件是用一个简单的jQuery月查看日历组件插件。你可以指定哪个月你想显示或有它显示当前的月份。只需100行的Javascript代码,此插件轻量级的但又十分完美。 Download Now | View Example 5. JavaScript Calendar Component … Read More

Reading More >>

Posted in JQuery | Leave a comment
08

discuz7.2出现 Error:Table ‘ucenter.uc_pms’ doesn’t exist

当安装Discuz 7.2是 安装成功后出现如下错误: Error:Table ‘ucenter.uc_pms’ doesn’t exist Errno:1146 SQL::SELECT count(*) FROM `ucenter`.uc_pms WHERE (related=’0′ AND msgfromid>’0′ OR msgfromid=’0′) AND msgtoid=’0′ AND folder=’inbox’ AND new=’1′别急~下面有解决办法原因是ucenter里没有uc_pms的数据表需要重新创建个数据表:DROP TABLE IF EXISTS uc_pms; CREATE TABLE uc_pms ( pmid int(10) unsigned NOT NULL auto_increment, msgfrom varchar(15) … Read More

Reading More >>

Posted in PHP | Leave a comment