apache php mysql codeigniter smarty 记录方便查询

windows:apache 

  1. apache:关于apache状态
<Location /server-status>SetHandler server-statusOrder deny,allowDeny from allAllow from 127.0.0.1
</Location>

   restart apache;

 

  2.apache:关闭自动目录列表

    #Options Indexes FollowSymLinks#更换为Options -Indexes

   restart apache;  

 

  3.apache:vhosts

    a,开启vhosts

# Virtual hosts
Include conf/extra/httpd-vhosts.conf

           b,打开 a中的httpd-vhosts.conf文件添加配置

      使用vhosts时,需将httpd.conf中的目录设置好你所有的vhosts站点的父目录,否则是无效的;

      如:d:/www/web/vhost1

        d:/www/web/vhost2

        ................

        d:/www/web/vhost10

        则你的httpd.conf Directory 应该是 d:/www/web/

 

#
# Use name-based virtual hosting.
#
#以下为你所要监控的IP列表
#注意喜欢监控域名的同学在使用CDN的使用你一定要换成监控IP,要不然你懂的
NameVirtualHost XXX.XXX.XX.XX:80
NameVirtualHost X.X.X.X.X:80
<VirtualHost XXX.XXX.XXX.XXX:80>ServerAdmin youmailDocumentRoot "you dir"ServerName you domainErrorLog "you log"CustomLog "you log" common#Redirect permanent / http://转发domain/
</VirtualHost>

当在所有的vhost中找不到相关的配置记录时,默认返回的是第一个vhost配置。所以要注意这里。

 

更好的方式:
virtue hosts map文件方式,自动生成虚拟站点记录,可以使用脚本(php、jsp或其它)自动生成记录写入文件,即时生效无需重启

            c, restart apache;

 

  4,apache:并发调整

    a,开启mpm

# Server-pool management (MPM specific)
#开启mpm
Include conf/extra/httpd-mpm.conf

    b,打开 a 中的 httpd-mpm.conf

      windows平台直接找到最后面的 WinNT MPM,以下说明内容来自apache手册

Apache MPM winnt

说明专门为Windows NT优化过的MPM
状态MPM
模块名mpm_winnt_module
源文件mpm_winnt.c

 

 

 

概述

该多路处理模块(MPM)是Windows NT上的默认值。它使用一个单独的父进程产生一个单独的子进程,在这个子进程中轮流产生多个线程来处理请求。

我们需要调整以下的内容,详细介绍看下面的来自手册的内容

# WinNT MPM
# ThreadsPerChild: constant number of worker threads in the server process
# MaxRequestsPerChild: maximum  number of requests a server process serves
<IfModule mpm_winnt_module>ThreadsPerChild      2000MaxRequestsPerChild    10000
</IfModule>

注意:根据你机器的情况调上面的值。但是windows平台下天生有问题好像,ThreadsPerChild不可设置的过高,就像你机器再好也不要。

求大牛解答,感谢。感谢。

 

ThreadsPerChild 指令

说明每个子进程建立的线程数
语法ThreadsPerChild number
默认值参见下面的说明
作用域server config
状态MPM
模块mpm_winnt, worker

 

 

 

 

 

这个指令设置了每个子进程建立的线程数。子进程在启动时建立这些线程后就不再建立新的线程了。如果使用一个类似于mpm_winnt只有一个子进程的MPM,这个数值要足够大,以便可以处理可能的请求高峰。如果使用一个类似于worker有多个子进程的MPM,每个子进程所拥有的所有线程的总数要足够大,以便可以处理可能的请求高峰。

对于mpm_winntThreadsPerChild的默认值是64;对于其他MPM是25

 

MaxRequestsPerChild 指令

说明每个子进程在其生存期内允许伺服的最大请求数量
语法MaxRequestsPerChild number
默认值MaxRequestsPerChild 10000
作用域server config
状态MPM
模块mpm_netware, mpm_winnt, mpmt_os2, prefork, worker

 

 

 

 

 

MaxRequestsPerChild指令设置每个子进程在其生存期内允许伺服的最大请求数量。到达MaxRequestsPerChild的限制后,子进程将会结束。如果MaxRequestsPerChild为"0",子进程将永远不会结束。

不同的默认值

mpm_netwarempm_winnt上的默认值是"0"。

MaxRequestsPerChild设置成非零值有两个好处:

  • 可以防止(偶然的)内存泄漏无限进行,从而耗尽内存。
  • 给进程一个有限寿命,从而有助于当服务器负载减轻的时候减少活动进程的数量。

注意

对于KeepAlive链接,只有第一个请求会被计数。事实上,它改变了每个子进程限制最大链接数量的行为。

 

php mysql mssql codeigniter smarty

  1,php:sockets

    我主要与C++通讯,并且通讯的数据包是C++中的结构体。所以采用php pack。

    参与以下文章,顺便感谢:http://www.neatstudio.com/show-2327-1.shtml

  3,php:mysql

    这个没什么好说的。我使用的是codeigniter框架。codeigniter有自己的db class ,有详细的手册。

  3,php:mssql

    同样,codeigniter有自己的db class,有详细的手册。

    我的环境环境是 mssql 2008,采用odbc方式。

    如下文所例:http://www.taomy.net/codeigniter-%E9%80%9A%E8%BF%87odbc%E8%BF%9E%E6%8E%A5-sqlserver%E7%9A%84%E6%96%B9%E6%B3%95%E5%AE%9E%E4%BE%8B

    需要注意的是,如果使用ci的 Active Record 数据库模式 getwhere mssql数据时,其所生成的sql语句是不附合mssql2008的语法的。需要自己解决。

  4,php:codeigniter 

    在临时接手这个项目的时候找了很多的框架,最终相中codeigniter,如其官方宣传一样 小巧,易学,轻量,性能不错,等非常易上手,以至于我临时啃PHP手册和codeigniter手册就能应付来的了。

    http://codeigniter.org.cn/

    http://codeigniter.org.cn/user_guide/index.html

    新浪sae有codeigniter sae上架,,还蛮方便的,写代码学习什么的,可以尝试下

    http://sae.sina.com.cn/?m=myapp&a=chooseapp

  5,php:codeigniter:smarty

     smarty真是好东西。不过现在类似的模板引擎非常多,不过最终还是相中smarty。codeigniter整合smarty也蛮简单使用起来也很方便。

     http://www.smarty.net/

     在 http://codeigniter.org.cn/forums/forum.php 搜索也会有一堆的结果。

我的配置方式如下:

 

1,将 Smarty 文件中的 lib 文件夹   拷贝至 CodeIgniterh目录 application\libraries 文件夹下 并重命名smarty lib文件名 
2,在application\libraries目录中新建文件:,并拷贝如下内容
<?php if(!defined('BASEPATH'))exit('no dir'); require_once (APPPATH.'libraries/Cismarty/Smarty.class.php');class Cismarty extends Smarty {protected $ci;function __construct(){parent::__construct();$this->ci = &get_instance();$this->template_dir = $this->ci->config->item('template_dir');$this->compile_dir = $this->ci->config->item('compile_dir');$this->cache_dir = $this->ci->config->item('caching_dir');$this->config_dir = $this->ci->config->item('config_dir');//$this->template_ext = $this->ci->config->item('template_ext');$this->caching = $this->ci->config->item('caching');$this->cache_lifetime = $this->ci->config->item('cache_lifetime');$this->left_delimiter = $this->ci->config->item('left_delimiter');$this->right_delimiter = $this->ci->config->item('right_delimiter');}}
?>

 

3,在application\config目录中新建,并拷贝如下内容作为配置文件
<?php if (! defined('BASEPATH')) exit('no direct base');
//    $config['template_dir'] = APPPATH.'views';
//    $config['compile_dir']     = FCPATH.'template_c';
//    $config['caching_dir']     = FCPATH.'cache';
//    $config['config_dir']     = FCPATH.'config';$config['template_dir'] = APPPATH.'views/templates';$config['compile_dir']     = APPPATH.'views/template_c';$config['caching_dir']     = FCPATH.'cache';$config['config_dir']     = FCPATH.'config';$config['caching']         = false;            //是否开启缓存$config['cache_lifetime']     = '60';            //缓存生存时间(秒)//$config['template_ext']     = '.html';$config['left_delimiter']     = '{!~';$config['right_delimiter']     = '~!}';?>

 

4,打开application\config文件,设置自动加载smarty配置文件和加载smarty插件,增加或修改如下内容
$autoload['config'] = array('smarty');         //自动加载配置文件
$autoload['libraries'] = array('cismarty');    //自动每一页加载smarty模板

 

ps.如果不自动加载时可以在需要使用的页面中调用 $this->load->library('cismarty');进行加载
5,测试程序
a,在application\controllers目录中新建立控制器  内容如下:

       

<?php
class Test extends CI_Controller {function __construct(){parent::__construct();//$this->load->library("cismarty");$this->load->library('form_validation');$this->form_validation->set_error_delimiters('<p class="error">', '</p>');}public function index(){$this->cismarty->assign("Name","test name");$this->cismarty->display( 'test.html' );}
}
?>

 

b,在application\views\templates模板目录中新建模板文件内容如下:
{!~$Name~!}
c,输入 http://localhost/you项目部/index.php/test  测试效果

 

转载于:https://www.cnblogs.com/ah2710/archive/2013/05/28/3103332.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/402694.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何通过Maven的Tomcat插件运行Web工程

From: https://blog.wuwii.com/maven-tomcat.html Tomcat 服务器是一个免费的开放源代码的Web 应用服务器&#xff0c;属于轻量级应用服务器&#xff0c;在中小型系统和并发访问用户不是很多的场合下被普遍使用&#xff0c;是开发和调试JSP 程序的首选。对于一个初学者来说&…

DUMPE2FS(8)

为什么80%的码农都做不了架构师&#xff1f;>>> DUMPE2FS(8) DUMPE2FS(8) NAME dumpe2fs - dump ext2/ext3/ext4 filesystem information SYNOPSIS dumpe2fs [ -bfhixV ] [ -o superblocksuperblock ] [ -o blocksizeblock- size ] …

lombok踩坑与思考

From: https://www.cnblogs.com/wuyuegb2312/p/9750462.html 虽然接触到lombok已经有很长时间&#xff0c;但是大量使用lombok以减少代码编写还是在新团队编写新代码维护老代码中遇到的。 我个人并不主张使用lombok&#xff0c;其带来的代价足以抵消其便利&#xff0c;但是由…

scheme 学习:红黑树

这几天继续学习scheme&#xff0c;scheme中虽然有hashtable但没有类似C中的map,于是把C版本中的红黑树移植到scheme(中间也发现了C版本中的一些问题&#xff0c;暂时懒得调整了^()^) 以作为后序set和表格驱动设计中表格的基础数据结构. 虽说这个红黑树在C版本中是调试好的了&am…

Maven多模块,Dubbo分布式服务框架,SpringMVC,前后端分离项目,基础搭建,搭建过程出现的问题...

现互联网公司后端架构常用到SpringSpringMVCMyBatis&#xff0c;通过Maven来构建。通过学习&#xff0c;我已经掌握了基本的搭建过程&#xff0c;写下基础文章为而后的深入学习奠定基础。 首先说一下这篇文章的主要内容分为&#xff1a; 1、Maven多模块项目的创建&#xff1b; …

Maven的pom.xml文件结构之Build配置build

From: https://blog.csdn.net/taiyangdao/article/details/52374125 在Maven的pom.xml文件中&#xff0c;Build相关配置包含两个部分&#xff0c;一个是<build>&#xff0c;另一个是<reporting>&#xff0c;这里我们只介绍<build>。 1. 在Maven的pom.xml文件…

FineUI 将不再内置 ExtJS (严格遵守 ExtJS 的开源规则)

从下个版本起&#xff0c;FineUI 将不再内置 ExtJS &#xff0c;不过我会提供说明如何使用 ExtJS&#xff08;并单独提供精简版的 ExtJS 包供论坛用户下载&#xff09;&#xff0c;现有的程序升级到新版本将不受影响&#xff08;只需要将精简版的 extjs 文件夹拷贝到程序根目录…

Maven开发笔记(四)—— Maven中plugins和pluginManagement

From: https://www.jianshu.com/p/49acf1246eff 1.plugins和pluginManagement的区别概述 plugins 和 pluginManagement 的区别&#xff0c;和我们前面研究过的 dependencies 和 dependencyManagement 的区别是非常类似的。plugins 下的 plugin 是真实使用的&#xff0c;而 pl…

Html代码seo优化最佳布局实例讲解

搜索引擎对html代码是非常优化的&#xff0c;所以html的优化是做好推广的第一步。一个符合seo规则的代码大体如下界面所示。 1、<!–木庄网络博客–> 这个东西是些页面注释的&#xff0c;可以在这里加我的“木庄网络博客”&#xff0c;但过多关键字可能被搜索引擎惩罚&a…

基于struts2,hibernate的小javaweb项目

19:47:49 这是截图 闲话不说 就开始了 web-xml&#xff1a; <?xml version"1.0" encoding"UTF-8"?> <web-app version"2.5" xmlns"http://java.sun.com/xml/ns/javaee"xmlns:xsi"http://www.w3.org/2001/XMLSchema-in…

YAML快速入门

From: https://www.jianshu.com/p/97222440cd08 我们学习Java&#xff0c;都是先介绍properties文件&#xff0c;使用properties文件配合Properties对象能够很方便的适用于应用配置上。然后在引入XML的时候&#xff0c;我们介绍properties格式在表现层级关系和结构关系的时候&…

MySql的用户权限

用户管理 MySQL数据库中的表与其他任何关系表没有区别&#xff0c;都可以通过典型的SQL命令修改其结构和数据。可以使用GRANT和REVOKE命令。通过这些命令&#xff0c;可以创建和禁用用户&#xff0c;可以在线授予和撤回用户访问权限。在5.0版本中增加了两个新命令&#xff1a;C…

.yaml 文件格式简介

From: https://www.cnblogs.com/wxmdevelop/p/7341292.html YAML 的意思其实是&#xff1a;"Yet Another Markup Language"&#xff08;仍是一种置标语言&#xff09;的缩写。 功能 YAML的语法和其他高阶语言类似&#xff0c;并且可以简单表达清单、散列表&#x…

jQuery与JS的区别,以及jQuery的基础语法

*在使用jQuery时&#xff0c;要在页面最上端加上 <script src"../jquery-1.11.2.min.js"></script> 看一下js与jQuery的区别&#xff1a; JS是这样使用的&#xff1a; <script type"text/javascript">根据ID取元素,取到的是具体的元素va…

sql语句中的时间查询

一般来说&#xff0c;我们在mysql数据库纪录数据时间时&#xff0c;都会选择datatime类型&#xff0c;这样时间可以精确到秒。但随之而来的一个问题是&#xff0c;当我们要取得某一段时间内的数据内容会有一些时间转换上的麻烦&#xff0c;例如我们要取得2002年3月2日到2003年7…

SnakeYaml快速入门

From: https://www.jianshu.com/p/d8136c913e52 在YAML快速入门[https://www.jianshu.com/p/97222440cd08]中&#xff0c;我们已经简单介绍了YAML的语法&#xff0c;本节中主要介绍YAML的配置读取。 目前有很多可以生成和解析YAML的第三方工具&#xff0c;常见的&#xff0c;…

CSS的一些零碎总结

1、CSS 伪元素用于向某些选择器设置特殊效果&#xff08;用来当作一个东西的&#xff0c;跟一个元素差不多&#xff0c;但不是元素&#xff09;。 ① :frist-line伪元素&#xff1a;用于向文本首行设置特殊样式&#xff0c;但是只能用于块级元素。 以下属性可应用于 “ frist-l…

有源代码的iphone项目

2019独角兽企业重金招聘Python工程师标准>>> http://blog.joomla.org.tw/iphone-ipad/104-iphone.html 學習和利用現成的資源是很重要的&#xff0c;以下列出有原始碼可下載的iPhone/iPod程式&#xff0c;這邊收集的是以已經放到App Store上的程式為主&#xff0c;…

匿名函数与闭包

<!DOCTYPE html><html lang"zh-CN"><head> <meta charset"UTF-8"> <title>闭包.html</title> <style> </style> <script src"jquery-1.7.2.min.js"></script> <script type&quo…

Content Security Policy 入门教程

From: http://www.ruanyifeng.com/blog/2016/09/csp.html 跨域脚本攻击 XSS 是最常见、危害最大的网页安全漏洞。 为了防止它们&#xff0c;要采取很多编程措施&#xff0c;非常麻烦。很多人提出&#xff0c;能不能根本上解决问题&#xff0c;浏览器自动禁止外部注入恶意脚本&…