“配置” 标签页面:

  • 安装aria2及使用yaaw配置WebGUI界面

    现在一般的linux发行版的gcc都不太新,而aria2 1.18之后需要gcc 4.8,所以只能装之前的版本咯。反正下载功能没有区别,都支持http、ftp、bt、magnet磁力链接等协议。

    wget http://jaist.dl.sourceforge.net/project/aria2/stable/aria2-1.17.1/aria2-1.17.1.tar.gz
    tar zxf aria2-1.17.1.tar.gz
    cd aria2-1.17.1
    ./configure --prefix=/usr/local/blog.creke.net/aria2 --enable-static=true --enable-shared=true --enable-libaria2 --with-tcmalloc --with-sqlite3=/usr/local
    #注:configure输出最主要看Xml-RPC是yes就行
    make
    make install

    然后摸一下session文件:

    touch /home/blog.creke.net/work/aria2/aria2.session

    配置(/home/blog.creke.net/work/aria2/aria2.conf):

    #Basic
    dir=/home/blog.creke.net/work/aria2/download
    continue=true

    #HTTP
    user-agent=Mozilla/5.0 (Windows NT 5.1; rv:16.0) Gecko/20100101 Firefox/16.0

    #BT
    enable-dht=true
    seed-time=0
    dht-listen-port=6882
    dht-entry-point=loki.uplinklabs.net:33445

    #network
    max-overall-download-limit=5M
    max-overall-upload-limit=1M
    max-upload-limit=512K

    #RPC
    enable-rpc=true
    #rpc-listen-all=true
    rpc-allow-origin-all=true
    rpc-listen-port=35002
    #rpc-user=none
    #rpc-passwd=none

    #Advanced

    配置nginx代理aria2的jsonrpc:

    location /aria2/jsonrpc {
    proxy_pass http://localhost:35002/jsonrpc;
    proxy_redirect off;
    proxy_set_header        X-Real-IP       $remote_addr;
    proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
    }

    安装web gui:

    wget https://github.com/binux/yaaw/archive/master.zip
    mv master yaaw.zip
    unzip yaaw.zip
    mv yaaw-master/ yaaw/

    值得一提的是,yaaw不支持用户名密码,所以用nginx进行反向代理。修改
    打开yaaw的js目录中aria2.js和yaaw.js,搜寻端口号,改成自己定义的端口号和路径。

    附:init.d适用的自动启动脚本如下:

    #! /bin/sh
    # chkconfig: 2345 55 25
    # Description: Startup script for nginx webserver on Debian. Place in /etc/init.d and
    # run 'update-rc.d -f nginx defaults', or use the appropriate command on your
    # distro. For CentOS/Redhat run: 'chkconfig --add aria2'

    ### BEGIN INIT INFO
    # Provides:          aria2c
    # Required-Start:    $all
    # Required-Stop:     $all
    # Default-Start:     2 3 4 5
    # Default-Stop:      0 1 6
    # Short-Description: starts aria2c
    # Description:       starts aria2c as a service
    ### END INIT INFO

    # Author:   Creke
    # website:  http://blog.creke.net/

    PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
    DESC="aria2c daemon"
    NAME=aria2c
    DAEMON=/usr/local/blog.creke.net/aria2/bin/$NAME
    CONFPATH=/home/blog.creke.net/work/aria2/aria2.conf
    SESSION=/home/blog.creke.net/work/aria2/aria2.session
    #PIDFILE=/usr/local/haproxy/etc/$NAME.pid
    SCRIPTNAME=/etc/init.d/$NAME
    USER="blog.creke.net"

    set -e
    [ -x "$DAEMON" ] || exit 0

    do_start() {
    su - $USER -c "$DAEMON --conf-path=$CONFPATH -D --input-file=$SESSION --save-session=$SESSION" || echo -n "aria2c already running"
    }

    do_stop() {
    killall -INT $NAME || echo -n "aria2c not running"
    }

    do_reload() {
    kill -HUP $NAME || echo -n "aria2c can't reload"
    }

    case "$1" in
    start)
    echo -n "Starting $DESC: $NAME"
    do_start
    echo "."
    ;;
    stop)
    echo -n "Stopping $DESC: $NAME"
    do_stop
    echo "."
    ;;
    reload|graceful)
    echo -n "Reloading $DESC configuration..."
    do_reload
    echo "."
    ;;
    restart)
    echo -n "Restarting $DESC: $NAME"
    do_stop
    do_start
    echo "."
    ;;
    *)
    echo "Usage: $SCRIPTNAME {start|stop|reload|restart}" >&2
    exit 3
    ;;
    esac

    exit 0

     

    2016.08.30 / 暂无评论 / 1,055 次点击 / 分类: 所谓技术

  • php5.2配置使用memcached(附php_memcache.dll官方下载)

    当前PHP都已经到5.4了,但是我还是5.2,没办法,已经从以前的更新强迫症到现在的更新拖延症了。所以说一下PHP5.2的memcached怎么配置使用。

    这里下载最新的pecl包,即使版本不一样,只需要保证是5.2的即可,如pecl-5.2.6-Win32.zip。然后把压缩包里的php_memcache.dll解压缩到PHP安装目录下的ext文件夹中。

    打开php.ini,在extension列表后加上:

    extension=php_memcache.dll

    打开memcached,使用下面脚本测试memcached和PHP联合是否成功:

    <?php
    	$mem = new Memcache;
    	$mem->connect('localhost', 11211) or die ("Could not connect");
    	
    	$mem->set('test', 'testMem');
    
    	echo $mem->get('test');
    	
    ?>

    OK,就是这样。

    2012.06.26 / 1 条评论 / 2,841 次点击 / 分类: 所谓技术

  • Virtualbox终极无间配置篇

    Virtualbox有个问题,就是即使是相同用户启动,如果用户session不一样,那么还是会看到不同的启动结果,不能相互管理不同session启动的虚拟机(via)。这就杯具了啊,有时候,启动几个虚拟机,但是其中有一个死机了,要从主机的任务管理器里结束进程,我咋知道应该结束哪个???

    还有一个问题,就是网络默认是NAT,很灵活也很方便,端口转发很实用。但是有一个致命伤,就是大流量多连接情况下,容易导致内存溢出,虚拟机断网,甚至进程崩溃等问题。

    我看到最近几个更新的changelog有改善NAT的问题,所以卸载了原来的Virualbox,重启,安装新版,重启。然后打开虚拟机,卸载Virtualbox Guest Addtion,重启,安装新版,重启。至此,由外到里更新完毕。

    然后,开始正式的配置。

    同步全局的Virtualbox设置

    我们知道,默认的Virtualbox设置是因用户而异的,一般存放在“C:\Documents and Settings\用户名\.Virtualbox”文件夹中。我们可以设定一下,使设置文件统一存放:新建“VBOX_USER_HOME”变量,里面填入设置存放的目录即可。

    虚拟机以服务形式启动(via

    下载srvstart,编辑下面内容存为srvstart.ini,比如保存在D盘根目录下:

    env=VBOXHEADLESS="C:\Program Files\Oracle\VirtualBox\vboxheadless.exe"
    env=VBOXMANAGE="C:\Program Files\Oracle\VirtualBox\VBoxManage.exe"

    debug=0
    debug_out=>D:\soft\vbox\srvstart.log

    wait_time=60

    [Win2003]
    startup=%VBOXHEADLESS% -startvm Win2003
    shutdown_method=command
    shutdown=%VBOXMANAGE% controlvm Win2003 poweroff

    [VMWinXP]
    startup=%VBOXHEADLESS% -startvm WinXP
    shutdown_method=command
    shutdown=%VBOXMANAGE% controlvm WinXP poweroff

    然后运行下面命令即可安装里面的WinXP为系统服务VMWinXP:

    srvstart install_desktop VMWinXP -c d:\srvstart.ini

    类似的,安装里面的Win2003为系统服务则是:

    srvstart install_desktop Win2003 -c d:\srvstart.ini

    当然,可以用系统命令sc创建系统服务,不过要注意两点:

    1. SC中,参数等于号后面要有一个空格,如“binPath= ”,后面有个空格哦,蛋疼得很。
    2. Virtualbox的服务需要开启桌面互动,否则会启动出错

    WEB管理Virtualbox:

    由于相同用户不同session也会导致虚拟机状态不同步,而且启动服务需要开启桌面互动,所以我们只能用默认的本地服务(Local Service)身份来启动服务。而Virtualbox的web service默认的验证方式是用户验证,所以我们要先把验证取消:

    VBoxManage setproperty websrvauthlibrary null

    然后设置Virtualbox的web api为服务,还是使用srvstart工具。我们先编辑刚刚的srvstart.ini,在末尾加上:

    [VboxWebSrv]
    startup=%VBOX_INSTALL_PATH%\VboxWebSrv --threads=20
    shutdown_method=kill

    并安装其为“VboxWebSrv”服务:

    srvstart install_desktop VboxWebSrv -c d:\srvstart.ini

    然后到SVN“phpvirtualbox”项目的源码,它是Virtualbox的WEB GUI。像安装PHP程序一样安装。注意要SOAP扩展,以及把config.php的用户名和密码置空。

    启动“VboxWebSrv”服务,访问你刚刚安装的“phpvirtualbox”,应该看到了正常的仿真Virtualbox面板。怎么样,可以通过web控制了吧。最重要的是,解决了不同session的虚拟机有不同状态的问题。

    要注意两点:

    1. VboxWebSrv默认占用127.0.0.1的18083端口,注意让防火墙放行。由于取消了验证,所以建议只监听本地的127.0.0.1(默认)
    2. 由于phpvirtualbox本身不设有验证机制,也就是说,Virtualbox的web控制端是可以公开访问的,所以有必要添加基于web的认证。Apache可以用.htpasswd解决。参考http://blog.creke.net/273.html

    NAT环境下的端口映射和端口转发(via

    VBoxManage modifyvm "VM name" --natpf1 "guestssh,tcp,host ip,2222, guest ip,22"

    命令解释:

    跟之前的一样,我们可以看到熟悉的VBoxManage的身影。紧随其后的是 modifyvm ,跟之前版本的命令不一样。然后就是“VM NAME”虚拟机名称,将其替换成相应的虚拟机名称就可以了。接着就是重点部分了,NAT端口映射的参数。
    1.natpf1 我们可以很容易理解这个参数,natpf即 nat port forwarding的缩写。后面紧接着的是虚拟机设置中相应网卡的数字,如果你的网卡是第一个,则为1。
    2.natpf后的参数
    (1)guestssh 是这个端口映射的名字,自行修改成容易理解的名称吧,如果填则系统会自动生成。
    (2)tcp (or udp) 是映射的协议。
    (3)host ip 则是你的主机的IP地址,如不填写则映射到主机中的所有IP地址上的相应端口。
    (4)2222(host port) 主机端口,自选吧。
    (5)guest ip 虚拟机中的IP地址,很明显,不填写则映射到虚拟机中的所有IP地址上的相应端口。
    (6)22(guest port)虚拟机端口,自选+1。

    如果要删除端口映射,只需要输入以下命令:

    VBoxManage modifyvm "VM name" --natpf1 delete "guestssh"

    清理压缩Virtualbox磁盘镜像

    可以使用VBoxManage命令中的modifyhd的compact参数解决。Windows虚拟机可以使用微软官方的SDelete工具来清理磁盘。

    具体步骤和原理参见Virtualbox官方的User Guide的Vboxmanage-modifyvdi部分

    2010.11.18 / 1 条评论 / 2,518 次点击 / 分类: 所谓技术

  • CentOS+Cpanel安装配置教程

    安装过程选择英文,不要手痒选中文,否则会很纠结的。

    选择软件时,我由于测试缘故,选了Desktop和Server。但实践证明,CentOS的GUI不好玩,而装CP会把你的Server大部分软件卸了。这里为了精简系统的目的,把所有默认的复选项的勾全部去掉,然后只选择“Development Tools”(开发工具)一项。

    如果不装CP,那么应该选择下面软件包:

    勾选:Editors, Text-based Internet, Development Libraries, Development Tools, DNS Name Server, FTP Server, Mail Server, MySQL Database, Server Configuration Tools, Web Server, Administration Tools, Base, and System Tools

    CentOS配置系统启动时默认的启动模式(字符、图形)

    方法:
    1、vi /etc/inittab
    2、找到id:x:initdefault:,我的系统是id:3:initdefault:,即默认以字符模式启动。
    3、将3改为5即可,即id:5:initdefault:
    4、reboot

    startx是在字符模式进入图形模式
    init 3是在图形模式进入字符模式

    vm下centos上不了网解决办法:
    仅供参考:如果本机也是通过路由上网的话,把vmwear的网卡设置成桥接看看,本机拨号上网的话,设置成nat。测试下看看

    安装Cpanel:

    wget http://layer1.cpanel.net/latest

    然后用sh命令执行下载回来的脚步即可。等待10-70分钟就装好了。

    安装完成Cpanel之后,重启系统。然后,访问https://你的IP:2087/,用户名是root,密码是你的root密码。如果提示证书问题,点信任以继续。进入WHM安装向导。前往这里查看WHM安装向导。看不懂英文?那还混啥……

    然后到控制台,运行“/scripts/phpextensionmgr install IonCubeLoader ZendOpt”安装两个PHP扩展。前者用于运行CP破解脚本,后者是著名的PHP加速器。

    然后破解什么的,就OK了。当然,如果找不到最新版的CP的破解,也是很正常的。

    2010.04.16 / 22 条评论 / 9,390 次点击 / 分类: 梦溪笔记

  • Visual Studio配置OpenGL

    分两步:

    (一)下载glut,并将其放置到适当的位置

    (二) 进行vs2005项目属性配置

    *******************************************************************************

    第一步,

    (转自参考网站: http://muggleyoung.blog.hexun.com/22800074_d.html)

    OpenGL作为当前主流的图形API之一,它在一些场合具有比DirectX更优越的特性。

    1、与C语言紧密结合。

    OpenGL命令最初就是用C语言函数来进行描述的,对于学习过C语言的人来讲,OpenGL是容易理解和学习的。如果你曾经接触过TC的graphics.h,你会发现,使用OpenGL作图甚至比TC更加简单。

    2、强大的可移植性。

    微软的Direct3D虽然也是十分优秀的图形API,但它只用于Windows系统(现在还要加上一个XBOX游戏机)。而OpenGL不仅用于 Windows,还可以用于Unix/Linux等其它系统,它甚至在大型计算机、各种专业计算机(如:医疗用显示设备)上都有应用。并且,OpenGL 的基本命令都做到了硬件无关,甚至是平台无关。

    3、高性能的图形渲染。

    OpenGL是一个工业标准,它的技术紧跟时代,现今各个显卡厂家无一不对OpenGL提供强力支持,激烈的竞争中使得OpenGL性能一直领先。

    总之,OpenGL是一个很NB的图形软件接口。至于究竟有多NB,去看看DOOM3和QUAKE4等专业游戏就知道了。

    OpenGL官方网站(英文)

    http://www.opengl.org

    下面将对Windows下的OpenGL编程进行简单介绍。

    学习OpenGL前的准备工作

    (一),选择一个编译环境

    现在Windows系统的主流编译环境有Visual Studio,Broland C++ Builder,Dev-C++等,它们都是支持OpenGL的。但这里我们选择Visual Studio 2005作为学习OpenGL的环境。

    (二),安装GLUT工具包

    GLUT不是OpenGL所必须的,但它会给我们的学习带来一定的方便,推荐安装。

    Windows环境下的GLUT下载地址:(大小约为150k)

    http://www.opengl.org/resources/libraries/glut/glutdlls37beta.zip

    无法从以上地址下载的话请使用下面的连接:

    http://upload.programfan.com/upfile/200607311626279.zip

    Windows环境下安装GLUT的步骤:

    1、将下载的压缩包解开,将得到5个文件

    2、在“我的电脑”中搜索“gl.h”,并找到其所在文件夹(如果是VisualStudio2005,则应该是其安装目录下面的

    “VC\PlatformSDK\include\gl文件夹”)。把解压得到的glut.h放到这个文件夹。

    3、把解压得到的glut.lib和glut32.lib放到静态函数库所在文件夹(如果是VisualStudio2005,则应该是其安装目录下面的“VC\lib”文件夹)。

    4、把解压得到的glut.dll和glut32.dll放到操作系统目录下面的system32文件夹内。(典型的位置为:C:\Windows\System32)

    (三),建立一个OpenGL工程

    这里以VisualStudio2005为例。

    选择File->New->Project,然后选择Win32 Console Application,选择一个名字,然后按OK。

    在谈出的对话框左边点Application Settings,找到Empty project并勾上,选择Finish。

    然后向该工程添加一个代码文件,取名为“OpenGL.c”,注意用.c来作为文件结尾。

    搞定了,就跟平时的工程没什么两样的

    *******************************************************************************

    第二部分:

    转载自 http://blog.tianya.cn/blogger/post_show.asp?BlogID=78856&PostID=14520900

    在 Project Properties->Configuration Properties->Linker->Input->Additional Dependencies 中添加opengl32.lib glu32.lib glaux.lib

    *******************************************************************************

    自己曾经出现过的两大问题:

    一):error LNK2019: unresolved external symbol __imp__glFlush@ 这类的错误

    1>PT.obj : error LNK2019: 无法解析的外部符号 _auxSolidSphere@8,该符号在函数 _main 中被引用

    1>PT.obj : error LNK2019: 无法解析的外部符号 _auxInitWindowA@4,该符号在函数 _main 中被引用

    1>PT.obj : error LNK2019: 无法解析的外部符号 _auxInitPosition@16,该符号在函数 _main 中被引用

    1>PT.obj : error LNK2019: 无法解析的外部符号 _auxInitDisplayMode@4,该符号在函数 _main 中被引用

           原因是没有在附加依赖项中添加如上lib 文件

           解决:Add "opengl32.lib glu32.lib glaux.lib" to Project Properties->Configuration Properties->Linker->Input->Additional Dependencies

       二):error C2664: “auxInitWindowW”: 不能将参数 1 从“const char [7]”转换为“LPCWSTR”

        与指向的类型无关;转换要求 reinterpret_cast、C 样式转换或函数样式转换

        错误及解决方案:

        not passing in a Unicode string - put an "L" before the string literal: L"XXXXX" or use the TEXT("XXXXX") or _T("XXXXX") macros...

    (转自http://blog.csdn.net/shuilan0066/archive/2008/12/03/3438108.aspx)

    2009.11.27 / 暂无评论 / 2,312 次点击 / 分类: 借此鉴彼

  • Visual Studio汇编语言环境配置

    还是拖着一个烂烂的Vista慢慢跑,一直说装Win7都没有装。

    要搞一下汇编语言了,干脆搞个VS2008速成版安装算了,微软免费授权,装了就是正版。如下图:

    vs2008express.jpg

    装好后,开始配置VS2008的汇编环境。

    首先,要确认你的VS安装了Microsoft Assembler(即MASM)对应版本。对于VS2005,对应MASM8.0,需要先在这里下载并安装VS2005SP1,以及在这里下载并安装MASM8.0。对于VS2008,对应MASM9.0,其中的Team Suite和Professional版已经包含,不需安装,其它版本需要下载VS2008的SP1,它包含了Visual C++ 2008 Feature Pack,里面才有MASM9.0。

    装好后,就可以新建项目并直接编译ASM文件了。

    如何让ASM文件代码高亮呢?

    asm代码高亮.jpg

    这里下载Usertype.dat,放到C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE文件夹中,然后在VS的“选项”窗口中,选择“文本编辑器”——“文件扩展名”,新增扩展名为“asm”,编辑器类型为“Microsoft Visual C++”。确定后,重启VS,就会发现ASM文件的代码可以高亮显示了。

    本文参考http://www.asmirvine.com/相关介绍,该网站还有关于如何使用VS调试运行《Assembly Language for Intel-Based Computers》一书的例子的相关介绍。

    该网站在中国大陆被和谐,无法直接访问。

    2009.11.05 / 暂无评论 / 2,902 次点击 / 分类: 所谓技术

  • Apache+MySQL+PHP+PhpMyAdmin 配置指南(PhpMyAdmin篇)

    Apache+MySQL+PHP+PhpMyAdmin 配置指南(PhpMyAdmin篇)
     
    config.sample.inc.php复制为config.inc.php
    $cfg['Servers'][$i]['auth_type']设为cookie或http,可以通过用户名+密码访问;$cfg['blowfish_secret']设置绝密密码,其实输入一大堆无意义的字符就OK
    当然,做个虚拟目录放PMA,而不将它放在wwwroot目录下,也不失为一个好技巧。

    2009.04.30 / 暂无评论 / 544 次点击 / 分类: 所谓技术

  • Apache+MySQL+PHP+PhpMyAdmin 配置指南(MySQL篇)

    如果你下载的是精简版的MySQL,需要先将完整版的data文件夹复制到安装目录下,以完成数据库初始化。
    复制my-small.ini为my-template.cnf,保存到bin文件夹中,以便采用MySQLInstanceConfig.exe配置。

    一、安装

    将下载的文件解压后是个setup.exe的可执行文件,点击即可安装。一般默认设置即可。

    1、在选择安装类型
        有“Typical(默认)”、“Complete(完全)”、“Custom(用户自定义)”三个选项,我们选择“Custom”,有更多的选项,可以自定义安装位置,也方便熟悉安装过程

    2、选择安装内容和安装路径

     

        如上图,如果想了解开发的特性,在“Developer Components(开发者部分)”上左键单击,选择“This feature, and all subfeatures, will be installed on local hard drive.”,即“此部分,及下属子部分内容,全部安装在本地硬盘上”。

        默认的安装路径是【C:\Program Files\MySQL\MySQL Server 5.1】,可以点击安装路径右侧的Change...按钮来更改默认安装路径。建议不要放在与操作系统同一分区,这样可以防止系统备份还原的时候,数据被清空。我将MySQL安装在“d:/tools/mysql”下。

        以往的版本都是将数据库的物理文件一同放在安装路径下的data目录下,但这个版本需要单独设置,如上图所示,需要通过【mysql server datafiles】来设置,其默认路径是放在了系统目录的一个隐藏的目录下,如图所示,建议修改到安装目录下或者一个指定的位置。方便日后备份。

    3、安装完成
        至此一路【Next】即可,直到提醒软件安装完成了,出现是否启动配置的界面,默认就是将 “Configure the Mysql Server now”前面勾打上的,点“Finish”结束软件的安装并启动mysql配置向导。也可以不勾选,等以后再配置。

    二、配置MySQL服务器

    1、启动配置向导
        除了如上述在安装结束时启动配置向导,还可以点击Windows启动菜单中MySQL服务器实例配置向导条目中的MySQL部分来启动MySQL Configuration Wizard(配置向导)。
        还可以进入MySQL安装bin目录直接启动MySQLInstanceConfig.exe文件。

    2、选择配置类型
        可以选择两种配置类型:Detailed Configuration(详细配置)和Standard Configuration(标准配置)。Standard Configuration(标准配置)选项适合想要快速启动MySQL而不必考虑服务器配置的新用户。详细配置选项适合想要更加细粒度控制服务器配置的高级用户。
        我这里选择默认的Detailed Configuration(详细配置),以便可以更精确的配置MySQL服务器。

    3、选择服务器类型
        可以选择3种服务器类型,选择哪种服务器将影响到MySQL实例对内存、硬盘和过程或使用的决策。
     

    其中:
    ・Developer Machine(开发机器):该选项代表典型个人用桌面工作站,在本地开发机器上时可以选择,MySQL使用最少的系统资源。
    ・Server Machine(服务器):该选项代表服务器,MySQL服务器可以同其它应用程序一起运行,例如FTP、email和web服务器。MySQL服务器配置成使用适当比例的系统资源。
    ・ Dedicated MySQL Server Machine(专用MySQL服务器):该选项代表只运行MySQL服务的服务器。MySQL服务器配置成使用所有可用系统资源。

    4、选择数据库使用情况
        通过Database Usage(数据库使用)对话框,你可以指出创建MySQL表时使用的表处理器。通过该选项,你可以选择是否使用InnoDB储存引擎,以及InnoDB占用多大比例的服务器资源。
     

    ・Multifunctional Database(多功能数据库):同时使用InnoDB和MyISAM储存引擎,并在两个引擎之间平均分配资源。建议经常使用两个储存引擎的用户选择该选项。
    ・Transactional Database Only(只是事务处理数据库):该选项同时使用InnoDB和MyISAM 储存引擎,但是将大多数服务器资源指派给InnoDB储存引擎。建议主要使用InnoDB只偶尔使用MyISAM的用户选择该选项。
    ・Non-Transactional Database Only(只是非事务处理数据库):该选项完全禁用InnoDB储存引擎,将所有服务器资源指派给MyISAM储存引擎。建议不使用InnoDB的用户选择该选项。

        简单说明:MyISAM类型不支持事务处理等高级处理,而InnoDB类型支持。MyISAM类型的表强调的是性能,其执行数度比InnoDB类型更快,但是不提供事务支持,而InnoDB提供事务支持已经外部键等高级数据库功能,由于使用Hibernate编程,所以选择Transactional Database Only。【更详细的区别可以查找参考手册,后续也会提供更详细说明】

    5、选择InnoDB表空间
        就是为InnoDB 数据库文件选择一个存储空间,如果修改了,要记住位置,重装的时候要选择一样的地方,否则可能会造成数据库损坏。注意一般使用默认位置即可。
        有些用户可能想要将InnoDB表空间文件放到不同的位置,而不放到MySQL服务器数据目录。如果你的系统有较大的空间或较高性能的储存设备(例如RAID储存系统,一般服务器都有RAID1或RAID5,开发机器一般没有),则最好将表空间文件单独放到一个位置。

    6、选择并发连接
        限制所创建的与MySQL服务器之间的并行连接数量很重要,以便防止服务器耗尽资源。其中可以选择设置的项目:
    ・Decision Support(决策支持)(DSS)/OLAP:如果服务器不需要大量的并行连接可以选择该选项。假定最大连接数目设置为100,平均并行连接数为20。
    ・Online Transaction Processing(联机事务处理)(OLTP):如果你的服务器需要大量的并行连接则选择该选项。最大连接数设置为500。
    ・Manual Setting(人工设置):选择该选项可以手动设置服务器并行连接的最大数目。从前面的下拉框中选择并行连接的数目,如果你期望的数目不在列表中,则在下拉框中输入最大连接数。
       
        我的开发机上人工只设置5个即可,正在开发的系统服务器选择第一项就能满足需要。

    7、Networking Options(网络选项)
        可以启用或禁用TCP/IP网络,并配置用来连接MySQL服务器的端口号。

     

       还有一个关于防火墙的设置“Add firewall exception ……”需要选中,将MYSQL服务的监听端口加为windows防火墙例外,避免防火墙阻断。

    8、选择缺省的字符集
        可以设置适用于所有表、列和数据库的默认服务器字符集。对于Java编写的支持中文的程序一般选择人工设置为UTF8。

    9、Windows服务选项
         默认将MySQL服务器安装为服务,服务名为MySQL。并且开机自动启动。

         该对话框还有一个选项,加入系统路径【Include bin directory in windows path】,建议勾选此项,以方便在命令行使用MySQL命令。

    10、安全选项
         为MySQL服务器设置一个root密码。如果重新配置已有的服务器,你还需要Current root password(当前root密码)框内输入已有的root密码。

         该对话框还有一个选项,允许root用户远程访问该机

    2009.04.30 / 暂无评论 / 820 次点击 / 分类: 所谓技术

  • Apache+MySQL+PHP+PhpMyAdmin 配置指南(PHP篇)

    Apache+MySQL+PHP+PhpMyAdmin 配置指南(PHP篇)

    在PHP5的根目录下有两个预先配置好的php.ini的模板文件,php.ini-dist和php.ini-recommend,你可以把任何一个复制为php.ini文件。PHP官方的建议:如果是日常使用的服务器环境,应该使用php.ini-recommend,日常开发的话使用php.ini-dist。
    官方原话的翻译是:压缩包中分发了2个ini文件,php.ini-dist和php.ini- recommended。我们推荐你使用php.ini-recommended,因为我们在这个文件里对默认设置作了性能和安全上的优化。请仔细阅读这份编写完好的文件,因为它与php.ini-dist有区别的地方会严重影响到你的安装。例如,display_errors设置为off, magic_quotes_gpc设置为off。阅读php.ini-recommended的同时,可以研究一下它包含的各项设置,自己手动调配参数。尽管PHP可以很好地工作在默认ini文件基础之上,但如果你想获得最佳安全环境,那么自己动手是最好的方式。把你选择的ini文件拷贝到PHP能找到的目录下,然后重命名为php.ini。在第5章中有个小节叫'配置文件',PHP会在此小节描述的位置中查找php.ini。

    我将php.ini-recommended复制为php.ini。

    修改php.ini:
    extension_dir = ".\ext"设定为模块目录,多个目录用“;”分隔;
    memory_limit每个单独PHP脚本运行时所能使用的最大的内存数,默认为128M,太大,改为32M;
    加载扩展语法为:extension=XXX.dll。
    我打开的扩展:
    打开GD图库extension=php_gd2.dll;打开宽字符库extension=php_mbstring.dll;打开IMAP,POP3 和 NNTP 函数库php_imap.dll;加载MySQL模块extension=php_mysql.dll;加载MySQL扩展模块extension=php_mysqli.dll。打开EXIF 函数库php_exif.dll。注意一,PHP 5 中(截止到 5.0.4)有以下修改。新增内置:DOM,LibXML,Iconv,SimpleXML,SPL 和SQLite。以下不再内置:MySQL 和 Overload;注意二,extension=php_mbstring.dll要在extension=php_exif.dll加载。
    其它设置:
    display_errors设定是否显示错误信息在网页上;
    error_reporting设定显示错误方式;
    log_errors设定是否日志记录错误;
    我出于个人需要,把临时目录设置了一下upload_tmp_dir;
    register_argc_argv=On;magic_quotes_gpc=On;variables_order = "EGPCS";short_open_tag = On等变量都设置了一下;

    联合Apache2与PHP:
    在Apache的配置文件httpd.conf中加入:
    LoadModule php5_module "W:\PHP\php5apache2_2.dll"
    AddType application/x-httpd-php .php 《== 设定要用PHP解析的文件后缀名,还要解析多几种则再加几行
    PHPIniDir "w:\PHP" 《== 设定PHP.ini的目录
    (如果还用Apache2.0就加入LoadModule php5_module "W:\PHP\php5apache2.dll")
    (如果还用PHP4则加入LoadModule php4_module "w:/php/sapi/php4apache2.dll")
    现在保存以下内容为info.php:
    <?php

     phpinfo();

    ?>
    在浏览器中访问上述info.php,如果PHP与Apache成功联合,则会显示PHP系统基本信息。

    用Zend Optimizer加速PHP:
    在PHP.ini加上:
    [Zend]
    zend_optimizer.optimization_level=7 《== 优化程度,这里定义启动多少个优化过程。
    zend_optimizer.encoder_loader=1 《== 是否允许处理由Zend Encoder加密的PHP文件。
    zend_extension_manager.optimizer_ts="W:\ZendOptimizer\lib\Optimizer-3.3.0" 《== 优化器所在目录。
    zend_extension_ts="W:\ZendOptimizer\lib\ZendExtensionManager.dll" 《== 优化器对应DLL。
    这样可以提高php运行效率,大家使用时一定要注意Apache的日志看看自己的加速器是否正常运行,因为通常是最新版本的加速器才支持最新版本的PHP。

    修改环境变量中的"PATH"加入PHP安装路径。

    不过如果要在Apache中加入新功能,如加入PHP解析的话,注意LogLevel的等级(为emerg已经可以)及日志为打开状态,否则出错也看不到错误日志的哦。

    至此Apache已经可以正确解析PHP了。

     

    2009.04.29 / 暂无评论 / 806 次点击 / 分类: 所谓技术

  • Apache+MySQL+PHP+PhpMyAdmin 配置指南(Apache篇)

    配置Apache(配置文件./conf/httpd.conf):ServerRoot改为Apache2程序所在目录;Listen监听端口,默认是80,可在前面加上IP地址制定监听IP;DocumentRoot设置存放站点html文件的目录;Options FollowSymLinks Indexes的Indexes去掉或加-,否则浏览者可以查看你的网站目录,当然个人调试可以不用那么严;DirectoryIndex默认首页文件名,加上index.php、index.htm一大堆,想到多少加多少,想不到就加这两个也可以了;配置ServerName,内网测试是localhost:port;

    配置日志:
    加入ErrorLog "logs/error.log",日志文件管理,记得建立对应文件夹;LogLevel改为emerg,#CustomLog "logs/access.log" common注释掉,关闭access.log日志。
    如此设置后,还是会产生error.log日志的,把它设在内存盘就高枕无忧了。
    不过如果要在Apache中加入新功能,如加入PHP解析的话,注意LogLevel的等级(一般emerg已经可以)及日志为打开状态,否则出错也看不到错误日志的哦。

    然后修改
    <Directory />
        Options FollowSymLinks
        AllowOverride None
    #    Order deny,allow
    #    Deny from all 不注释掉的话肯定无法访问啦
    </Directory>
    加载模块,实现各模块功能
    LoadModule actions_module modules/mod_actions.so
    LoadModule alias_module modules/mod_alias.so
    LoadModule asis_module modules/mod_asis.so
    LoadModule auth_basic_module modules/mod_auth_basic.so
    #LoadModule auth_digest_module modules/mod_auth_digest.so
    #LoadModule authn_alias_module modules/mod_authn_alias.so
    #LoadModule authn_anon_module modules/mod_authn_anon.so
    #LoadModule authn_dbd_module modules/mod_authn_dbd.so
    #LoadModule authn_dbm_module modules/mod_authn_dbm.so
    LoadModule authn_default_module modules/mod_authn_default.so
    LoadModule authn_file_module modules/mod_authn_file.so
    #LoadModule authnz_ldap_module modules/mod_authnz_ldap.so
    #LoadModule authz_dbm_module modules/mod_authz_dbm.so
    LoadModule authz_default_module modules/mod_authz_default.so
    LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
    LoadModule authz_host_module modules/mod_authz_host.so
    #LoadModule authz_owner_module modules/mod_authz_owner.so
    LoadModule authz_user_module modules/mod_authz_user.so
    LoadModule autoindex_module modules/mod_autoindex.so
    #LoadModule cache_module modules/mod_cache.so
    #LoadModule cern_meta_module modules/mod_cern_meta.so
    LoadModule cgi_module modules/mod_cgi.so
    #LoadModule charset_lite_module modules/mod_charset_lite.so
    #LoadModule dav_module modules/mod_dav.so
    #LoadModule dav_fs_module modules/mod_dav_fs.so
    #LoadModule dav_lock_module modules/mod_dav_lock.so
    #LoadModule dbd_module modules/mod_dbd.so
    #LoadModule deflate_module modules/mod_deflate.so
    LoadModule dir_module modules/mod_dir.so
    #LoadModule disk_cache_module modules/mod_disk_cache.so
    #LoadModule dumpio_module modules/mod_dumpio.so
    LoadModule env_module modules/mod_env.so
    #LoadModule expires_module modules/mod_expires.so
    #LoadModule ext_filter_module modules/mod_ext_filter.so
    #LoadModule file_cache_module modules/mod_file_cache.so
    #LoadModule filter_module modules/mod_filter.so
    #LoadModule headers_module modules/mod_headers.so
    #LoadModule ident_module modules/mod_ident.so
    #LoadModule imagemap_module modules/mod_imagemap.so
    LoadModule include_module modules/mod_include.so
    #LoadModule info_module modules/mod_info.so
    LoadModule isapi_module modules/mod_isapi.so
    #LoadModule ldap_module modules/mod_ldap.so
    #LoadModule logio_module modules/mod_logio.so
    LoadModule log_config_module modules/mod_log_config.so
    #LoadModule log_forensic_module modules/mod_log_forensic.so
    #LoadModule mem_cache_module modules/mod_mem_cache.so
    LoadModule mime_module modules/mod_mime.so
    #LoadModule mime_magic_module modules/mod_mime_magic.so
    LoadModule negotiation_module modules/mod_negotiation.so
    #LoadModule proxy_module modules/mod_proxy.so
    #LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
    #LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
    #LoadModule proxy_connect_module modules/mod_proxy_connect.so
    #LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
    #LoadModule proxy_http_module modules/mod_proxy_http.so
    #LoadModule rewrite_module modules/mod_rewrite.so
    LoadModule setenvif_module modules/mod_setenvif.so
    #LoadModule speling_module modules/mod_speling.so
    #LoadModule ssl_module modules/mod_ssl.so
    #LoadModule status_module modules/mod_status.so
    #LoadModule substitute_module modules/mod_substitute.so
    #LoadModule unique_id_module modules/mod_unique_id.so
    #LoadModule userdir_module modules/mod_userdir.so
    #LoadModule usertrack_module modules/mod_usertrack.so
    #LoadModule version_module modules/mod_version.so
    #LoadModule vhost_alias_module modules/mod_vhost_alias.so

    如果发现不能运行,那么去看看log文件,一般都是模块没有配置好造成的。然后根据需要取消模块加载或配置好模块。
    以后想实现什么模块功能,先<IfModule>中看看需要加载什么模块,然后再用LoadModule加载,最后配置好模块就可以了。

    设置虚拟目录:
    在配置文件中找下面这行:
       <IfModule mod_alias.c>
      在这行下面添加如下内容:
    Alias /phpmyadmin "W:/phpmyadmin/" #如果是Alias /phpmyadmin/则访问网址后必须有“/”
        <Directory "W:/phpmyadmin/">
            Options FollowSymLinks Indexes
            AllowOverride None
            Order deny,allow
            allow from 127.0.0.1#允许从127.0.0.1访问
            deny from all#拒绝从所有地址访问
        </Directory>

    个性化404等错误页面在ErrorDocument中设置。

    当然有一个小技巧,不太实用,就是先在沙盘中安装,然后RIP出来,最后批量修改配置文件中的路径。

    2009.04.28 / 暂无评论 / 1,528 次点击 / 分类: 所谓技术