LAMP的搭建
可以在网上找整合包:
- httpd-2.4.18 + mysql-5.6.29 + php-5.5.30编译安装过程:
- 编译源代码后安装软件的位置:/usr/local/
- 一、编译安装apache
- apache portable runtime
- 1、解决依赖关系
- httpd-2.4.18需要较新版本的apr和apr-util,因此需要事先对其进行升级。升级方式有两种,一种是通过源代码编译安装,一种是直接升级rpm包。这里选择使用编译源代码的方式进行。
- (1) 编译安装apr
- # tar xf apr-1.5.2.tar.bz2
- # cd apr-1.5.2
- # ./configure --prefix=/usr/local/apr
- # make && make install
- (2) 编译安装apr-util
- # tar xf apr-util-1.5.4.tar.bz2
- # cd apr-util-1.5.4
- # ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
- # make && make install
- 用户账户: daemon
- 附:apache官方对APR的介绍:
- The mission of the Apache Portable Runtime (APR) project is to create and maintain software libraries that provide a predictable and consistent interface to underlying platform-specific implementations. The primary goal is to provide an API to which software developers may code and be assured of predictable if not identical behaviour regardless of the platform on which their software is built, relieving them of the need to code special-case conditions to work around or take advantage of platform-specific deficiencies or features.
- (3) httpd-2.4.18编译过程也要依赖于pcre-devel软件包,需要事先安装。此软件包系统光盘自带,因此,找到并安装即可。
- 2、编译安装httpd-2.4.18
- 首先下载httpd-2.4.18到本地。而后执行如下命令进行编译安装过程:
- # tar xf httpd-2.4.18.tar.bz2
- # cd httpd-2.4.18
- # ./configure --prefix=/usr/local/apache --sysconfdir=/etc/httpd --enable-so --enable-ssl --enable-cgi --enable-rewrite --with-zlib --with-pcre --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --enable-modules=most --enable-mpms-shared=all --with-mpm=event
- # make && make install
- 补充:
- (1)构建MPM为静态模块
- 在全部平台中,MPM都可以构建为静态模块。在构建时选择一种MPM,链接到服务器中。如果要改变MPM,必须重新构建。为了使用指定的MPM,请在执行configure脚本 时,使用参数 --with-mpm=NAME。NAME是指定的MPM名称。编译完成后,可以使用 ./httpd -l 来确定选择的MPM。 此命令会列出编译到服务器程序中的所有模块,包括 MPM。
- (2)构建 MPM 为动态模块
- 在Unix或类似平台中,MPM可以构建为动态模块,与其它动态模块一样在运行时加载。 构建 MPM 为动态模块允许通过修改LoadModule指令内容来改变MPM,而不用重新构建服务器程序。在执行configure脚本时,使用--enable-mpms-shared选项即可启用此特性。当给出的参数为all时,所有此平台支持的MPM模块都会被安装。还可以在参数中给出模块列表。默认MPM,可以自动选择或者在执行configure脚本时通过--with-mpm选项来指定,然后出现在生成的服务器配置文件中。编辑LoadModule指令内容可以选择不同的MPM。
- 3、修改httpd的主配置文件,设置其Pid文件的路径
- 编辑/etc/httpd/httpd.conf,添加如下行即可:
- PidFile "/var/run/httpd.pid"
- 4、提供SysV服务脚本/etc/rc.d/init.d/httpd,内容如下:
- #!/bin/bash
- #
- # httpd Startup script for the Apache HTTP Server
- #
- # chkconfig: - 85 15
- # description: Apache is a World Wide Web server. It is used to serve \
- # HTML files and CGI.
- # processname: httpd
- # config: /etc/httpd/conf/httpd.conf
- # config: /etc/sysconfig/httpd
- # pidfile: /var/run/httpd.pid
- # Source function library.
- . /etc/rc.d/init.d/functions
- if [ -f /etc/sysconfig/httpd ]; then
- . /etc/sysconfig/httpd
- fi
- # Start httpd in the C locale by default.
- HTTPD_LANG=${HTTPD_LANG-"C"}
- # This will prevent initlog from swallowing up a pass-phrase prompt if
- # mod_ssl needs a pass-phrase from the user.
- INITLOG_ARGS=""
- # Set HTTPD=/usr/sbin/httpd.worker in /etc/sysconfig/httpd to use a server
- # with the thread-based "worker" MPM; BE WARNED that some modules may not
- # work correctly with a thread-based MPM; notably PHP will refuse to start.
- # Path to the apachectl script, server binary, and short-form for messages.
- apachectl=/usr/local/apache/bin/apachectl
- httpd=${HTTPD-/usr/local/apache/bin/httpd}
- prog=httpd
- pidfile=${PIDFILE-/var/run/httpd.pid}
- lockfile=${LOCKFILE-/var/lock/subsys/httpd}
- RETVAL=0
- start() {
- echo -n $"Starting $prog: "
- LANG=$HTTPD_LANG daemon --pidfile=${pidfile} $httpd $OPTIONS
- RETVAL=$?
- echo
- [ $RETVAL = 0 ] && touch ${lockfile}
- return $RETVAL
- }
- stop() {
- echo -n $"Stopping $prog: "
- killproc -p ${pidfile} -d 10 $httpd
- RETVAL=$?
- echo
- [ $RETVAL = 0 ] && rm -f ${lockfile} ${pidfile}
- }
- reload() {
- echo -n $"Reloading $prog: "
- if ! LANG=$HTTPD_LANG $httpd $OPTIONS -t >&/dev/null; then
- RETVAL=$?
- echo $"not reloading due to configuration syntax error"
- failure $"not reloading $httpd due to configuration syntax error"
- else
- killproc -p ${pidfile} $httpd -HUP
- RETVAL=$?
- fi
- echo
- }
- # See how we were called.
- case "$1" in
- start)
- start
- ;;
- stop)
- stop
- ;;
- status)
- status -p ${pidfile} $httpd
- RETVAL=$?
- ;;
- restart)
- stop
- start
- ;;
- condrestart)
- if [ -f ${pidfile} ] ; then
- stop
- start
- fi
- ;;
- reload)
- reload
- ;;
- graceful|help|configtest|fullstatus)
- $apachectl $@
- RETVAL=$?
- ;;
- *)
- echo $"Usage: $prog {start|stop|restart|condrestart|reload|status|fullstatus|graceful|help|configtest}"
- exit 1
- esac
- exit $RETVAL
- 而后为此脚本赋予执行权限:
- # chmod +x /etc/rc.d/init.d/httpd
- 加入服务列表:
- # chkconfig --add httpd
- 接下来就可以启动服务进行测试了。
- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- 使用通用二进制格式安装MySQL5.6.29
- # tar -xf mysql-5.6.29-linux-glibc2.5-i686.tar.gz
- # mv mysql-5.6.29-linux-glibc2.5-i686 /usr/local/mysql
- 导出二进制文件
- # vim /etc/profile.d/mysql.sh
- export PATH=$PATH:/usr/local/mysql/bin
- # source /etc/profile.d/mysql.sh
- 导出库文件:
- # vim /etc/ld.so.conf.d/mysql.conf
- /usr/local/mysql/lib
- # ldconfig -v
- 导出头文件:
- # ln -s /usr/local/mysql/include /usr/include/mysql
- 导出帮助手册:
- # vim /etc/man.config
- MANPATH /usr/local/mysql/man
- 启动脚本:
- cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
- 最好将数据库目录放置到某个lv上,挂载后在其中创建名为data的目录
- 创建mysql用户和组
- # groupadd -r mysql
- # useradd -r -g mysql -s /sbin/nologin mysql
- chown mysql: /mydata/data
- chown -R mysql: /usr/local/mysql
- 初始化数据库:
- /usr/local/mysql/scripts/mysql_install_db --user=mysql --datadir=/mydata/data
- 生成配置文件:
- cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf
- vim /etc/my.cnf
- basedir = /usr/local/mysql
- datadir = /mydata/data
- port = 3306
- socket = /tmp/mysql.sock
- 启动服务:
- service mysqld start
- 为了保证安全,防止进程会话被劫持,需要改动所有权:
- # chown -R root: /usr/local/mysql
- 二、编译安装MySQL-5.6.29
- 1、安装cmake
- 跨平台编译器
- # tar xf cmake-2.8.8.tar.gz
- # cd cmake-2.8.8
- # ./configure
- # make
- # make install
- 2、编译安装mysql-5.6.29
- 使用cmake编译mysql-5.6.29
- cmake指定编译选项的方式不同于make,其实现方式对比如下:
- ./configure cmake .
- ./configure --help cmake . -LH
- 指定安装文件的安装路径时常用的选项:
- -DCMAKE_INSTALL_PREFIX=/usr/local/mysql
- -DMYSQL_DATADIR=/data/mysql
- -DSYSCONFDIR=/etc
- 默认编译的存储引擎包括:csv、myisam、myisammrg和heap。若要安装其它存储引擎,可以使用类似如下编译选项:
- -DWITH_INNOBASE_STORAGE_ENGINE=1
- -DWITH_ARCHIVE_STORAGE_ENGINE=1
- -DWITH_BLACKHOLE_STORAGE_ENGINE=1
- -DWITH_FEDERATED_STORAGE_ENGINE=1
- 若要明确指定不编译某存储引擎,可以使用类似如下的选项:
- -DWITHOUT_<ENGINE>_STORAGE_ENGINE=1
- 比如:
- -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1
- -DWITHOUT_FEDERATED_STORAGE_ENGINE=1
- -DWITHOUT_PARTITION_STORAGE_ENGINE=1
- 如若要编译进其它功能,如SSL等,则可使用类似如下选项来实现编译时使用某库或不使用某库:
- -DWITH_READLINE=1 //能够实用Loadinfile 的方式批量导入MySQL数据
- -DWITH_SSL=system //基于SSL功能实现复制对于MySQL来说非常重要
- -DWITH_ZLIB=system
- -DWITH_LIBWRAP=0
- 其它常用的选项:
- -DMYSQL_TCP_PORT=3306
- -DMYSQL_UNIX_ADDR=/tmp/mysql.sock
- -DENABLED_LOCAL_INFILE=1
- -DEXTRA_CHARSETS=all
- -DDEFAULT_CHARSET=utf8
- -DDEFAULT_COLLATION=utf8_general_ci
- -DWITH_DEBUG=0
- -DENABLE_PROFILING=1
- 3、完成编译安装
- (1)安装前的准备工作
- 创建mysql用户和组
- groupadd -r mysql
- useradd -r -g mysql -s /sbin/nologin mysql
- (2)将数据目录放置在事先准备好的逻辑卷上。
- 准备逻辑卷,将其挂载至/mydata,并在其中创建data目录
- 修改data目录所有权,chown -R mysql.mysql /mydata
- (3)如果想要使用OPENSSL进行加密,需要安装与SSL相关的包,保证编译所需要的库文件和头文件都可以被查找并访问到。
- yum -y install openssl*
- (4)开始编译并按照编译的选项进行安装
- # tar xf mysql-5.6.29.tar.gz
- # cd mysql-5.6.29
- # cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/mydata/data -DSYSCONFDIR=/etc -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DWITH_SSL=system -DWITH_LIBWRAP=0 -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci
- # make
- # make install
- 如果想清理此前的编译所生成的文件,则需要使用如下命令:
- make clean
- rm CMakeCache.txt
- 4、安装之后的配置:
- # cd /usr/local/mysql
- # chown -R :mysql .
- # scripts/mysql_install_db --user=mysql --datadir=/mydata/data --basedir=/usr/local/mysql
- # cp support-files/my-default.cnf /etc/my.cnf
- 修改/etc/my.cnf,在其中添加datadir = /mydata/data (最好添加)
- # cp support-files/mysql.server /etc/init.d/mysqld
- # vim /etc/profile.d/mysql.sh
- export PATH=$PATH:/usr/local/mysql/bin
- 四、编译安装php-5.5.30
- 1)、解决依赖关系:
- 请配置好yum源(可以是本地系统光盘)后执行如下命令:
- # yum -y groupinstall "X Software Development"
- 如果想让编译的php支持mcrypt扩展,此处还需要下载如下rpm包并安装之:
- libmcrypt-2.5.8-9.el6.i386.rpm
- libmcrypt-devel-2.5.8-9.el6.i386.rpm
- mhash-0.9.9-3.el6.i386.rpm
- mhash-devel-0.9.9-3.el6.i386.rpm
- 2)、编译安装php-5.5.30
- 首先下载源码包至本地目录。
- # tar xf php-5.5.30.tar.bz2
- # cd php-5.5.30
- # ./configure --prefix=/usr/local/php\
- --with-mysql=/usr/local/mysql\
- --with-openssl \
- --with-mysqli=/usr/local/mysql/bin/mysql_config \
- --enable-mbstring \
- --with-freetype-dir \
- --with-jpeg-dir \
- --with-png-dir \
- --with-zlib \
- --with-libxml-dir=/usr \
- --enable-xml \
- --enable-sockets \
- --enable-fpm \
- --with-mcrypt \
- --with-config-file-path=/etc \
- --with-config-file-scan-dir=/etc/php.d \
- --with-bz2
- 说明:如果使用PHP5.3以上版本,为了链接MySQL数据库,可以指定mysqlnd,这样在本机就不需要先安装MySQL或MySQL开发包了。mysqlnd从php 5.3开始可用,可以编译时绑定到它(而不用和具体的MySQL客户端库绑定形成依赖),但从PHP 5.4开始它就是默认设置了。
- # ./configure --with-mysql=mysqlnd --with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd
- # make
- # make test
- # make intall
- 为php提供配置文件:
- # cp php.ini-production /etc/php.ini
- 3、配置php-fpm
- 为php-fpm提供Sysv init脚本,并将其添加至服务列表:
- # cp sapi/fpm/init.d.php-fpm /etc/rc.d/init.d/php-fpm
- # chmod +x /etc/rc.d/init.d/php-fpm
- # chkconfig --add php-fpm
- # chkconfig php-fpm on
- 为php-fpm提供配置文件:
- # cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
- 编辑php-fpm的配置文件:
- # vim /usr/local/php/etc/php-fpm.conf
- 配置fpm的相关选项为你所需要的值,并启用pid文件(如下最后一行):
- pm.max_children = 50
- pm.start_servers = 5
- pm.min_spare_servers = 2
- pm.max_spare_servers = 8
- pid = /usr/local/php/var/run/php-fpm.pid
- 接下来就可以启动php-fpm了:
- # service php-fpm start
- 使用如下命令来验正(如果此命令输出有中几个php-fpm进程就说明启动成功了):
- # ps aux | grep php-fpm
- 默认情况下,fpm监听在127.0.0.1的9000端口,也可以使用如下命令验正其是否已经监听在相应的套接字。
- # netstat -tnlp | grep php-fpm
- tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN 689/php-fpm
- 五、配置httpd-2.4.18
- 1、启用httpd的相关模块
- 在Apache httpd 2.4以后已经专门有一个模块针对FastCGI的实现,此模块为mod_proxy_fcgi.so,它 其实是作为mod_proxy.so模块的扩充,因此,这两个模块都要加载:
- LoadModule proxy_module modules/mod_proxy.so
- LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so
- 2、配置虚拟主机支持使用fcgi
- 在相应的虚拟主机中添加类似如下两行。
- ProxyRequests Off
- ProxyPassMatch ^/(.*\.php)$ fcgi://127.0.0.1:9000/PATH/TO/DOCUMENT_ROOT/$1
- 例如:
- <VirtualHost *:80>
- DocumentRoot "/web/www.qhdlink.com"
- ServerName qhdlink.com
- ServerAlias www.qhdlink.com
- ProxyRequests Off
- ProxyPassMatch ^/(.*\.php)$ fcgi://127.0.0.1:9000/web/www.qhdlink.com/$1
- <Directory "/www/qhdlink.com">
- Options none
- AllowOverride none
- Require all granted
- </Directory>
- </VirtualHost>
- ProxyRequests Off:关闭正向代理
- ProxyPassMatch:把以.php结尾的文件请求发送到php-fpm进程,php-fpm至少需要知道运行的目录和URI,所以这里直接在fcgi://127.0.0.1:9000后指明了这两个参数,其它的参数的传递已经被mod_proxy_fcgi.so进行了封装,不需要手动指定。
- 3、编辑apache配置文件httpd.conf,让apache能识别php格式的页面,并支持php格式的主页
- # vim /etc/httpd/httpd.conf
- 1、添加如下二行
- AddType application/x-httpd-php .php
- AddType application/x-httpd-php-source .phps
- 2、定位至DirectoryIndex index.html
- 修改为:
- DirectoryIndex index.php index.html
- 补充:Apache httpd 2.4以前的版本中,要么把PHP作为Apache的模块运行,要么添加一个第三方模块支持PHP-FPM实现。
- 使用Discuz!测试
- # chmod 777 ./config ./data/ ./data/{cache,avatar,plugindata,download,addonmd5,template,threadcache,attachment,log} ./data/attachment/{album,forum,group} ./uc_client/data/cache/ ./uc_server/data ./uc_server/data/{cache,avatar,backup,logs,tmp,view}
- 六、安装xcache,为php加速:
- 1、安装
- # tar xf xcache-3.2.0.tar.gz
- # cd xcache-3.2.0
- # /usr/local/php/bin/phpize
- # ./configure --enable-xcache --with-php-config=/usr/local/php/bin/php-config
- # make && make install
- 安装结束时,会出现类似如下行:
- Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-20121212/
- 2、编辑php.ini,整合php和xcache:
- 首先将xcache提供的样例配置导入php.ini
- # mkdir /etc/php.d
- # cp xcache.ini /etc/php.d
- 说明:xcache.ini文件在xcache的源码目录中。
- 接下来编辑/etc/php.d/xcache.ini,找到zend_extension开头的行,修改为如下行:
- zend_extension = /usr/local/php/lib/php/extensions/no-debug-zts-xxx/xcache.so
- 注意:如果php.ini文件中有多条zend_extension指令行,要确保此新增的行排在第一位。
- 七、启用服务器状态
- mod_status模块可以让管理员查看服务器的执行状态,它通过一个HTML页面展示了当前服务器的统计数据。这些数据通常包括但不限于:
- (1) 处于工作状态的worker进程数;
- (2) 空闲状态的worker进程数;
- (3) 每个worker的状态,包括此worker已经响应的请求数,及由此worker发送的内容的字节数;
- (4) 当前服务器总共发送的字节数;
- (5) 服务器自上次启动或重启以来至当前的时长;
- (6) 平均每秒钟响应的请求数、平均每秒钟发送的字节数、平均每个请求所请求内容的字节数;
- 启用状态页面的方法很简单,只需要在主配置文件中添加如下内容即可:
- <Location /server-status>
- SetHandler server-status
- Require all granted
- </Location>
- 需要提醒的是,这里的状态信息不应该被所有人随意访问,因此,应该限制仅允许某些特定地址的客户端查看。比如使用Require ip 172.16.0.0/16来限制仅允许指定网段的主机查看此页面。
LAMP的搭建的更多相关文章
- lamp环境搭建(ubuntu)
系统:Ubuntu14.04 方法一.最简单的在线安装 (参考网址:http://os.51cto.com/art/201307/405333.htm) 具体过程: [1]打开终端,执行命令 # su ...
- LAMP平台搭建菜鸟入门级实验
LAMP平台搭建(菜鸟入门级) mysql 安装: (1)二进制安装 二进制安装 ,执行解压配置即可.无须执行三布安装. (2)源码编译安装 安装准备工作: (1)查看系统配置:#uname -a/ ...
- LAMP环境搭建教程(原创)
学习PHP脚本编程语言之前,必须先搭建并熟悉开发环境,开发环境有很多种,例如LAMP.WAMP.MAMP等.这里我介绍一下LAMP环境的搭建,即Linux.Apache.MySQL.PHP环境. 一. ...
- LAMP环境搭建教程
原文:LAMP环境搭建教程 学习PHP脚本编程语言之前,必须先搭建并熟悉开发环境,开发环境有很多种,例如LAMP.WAMP.MAMP等.这里我介绍一下LAMP环境的搭建,即Linux.Apache.M ...
- 转载自php100中文网 centos下lamp 环境搭建
学习PHP脚本编程语言之前,必须先搭建并熟悉开发环境,开发环境有很多种,例如LAMP.WAMP.MAMP等.这里我介绍一下LAMP环境的搭建,即Linux.Apache.MySQL.PHP环境. 一. ...
- LAMP 环境搭建之源码包编译安装
mysql用的二进制包安装. Apache php 用的源码包 mysql版本5.5.46 Apache版本2.4.7 PHP版本:5.5 mysql安装部分参考了阿铭linux的内容. 这是 ...
- Lamp环境搭建Linux CentOS6.5编译安装mysql5.6
经典web开发组合Lamp环境搭建之mysql安装详解 安装前准备 通过rpm命令检查centos上是否已经安装mysql,然后卸载已经存在的mysql版本 [root@localhost src]# ...
- ubuntu上lamp环境搭建
首先,介绍个彻底删除linux已经安装的软件的方法. sudo apt-get purge mysql-server mysql-client mysql-common mysql-server-5. ...
- linux的基本操作(LAMP环境搭建)
LAMP 环境搭建 经过前部分章节的学习,你已经掌握了linux的基础知识了.但是想成为一名系统管理员恐怕还有点难度,因为好多单位招聘这个职位的时候都要求有一定的工作经验.然而真正的经验一天两天是学不 ...
- lamp环境搭建(centos6.9+apache2.4+mysql5.7+php7.1)
lamp环境搭建(centos6.9+apache2.4+mysql5.7+php7.1) 安装前准备:CentOS 6.9 64位 最小化安装 yum install -y make gcc gcc ...
随机推荐
- 【一天一道LeetCode】#121. Best Time to Buy and Sell Stock
# 一天一道LeetCode 本系列文章已全部上传至我的github,地址:ZeeCoder's Github 欢迎大家关注我的新浪微博,我的新浪微博 欢迎转载,转载请注明出处 (一)题目 Say ...
- HTML5 placeholder(空白提示) 属性
原文地址:HTML5′s placeholder Attribute 演示地址: placeholder演示 原文日期: 2010年08月09日 翻译日期: 2013年8月6日 浏览器引入了许多的HT ...
- Uva - 816 - Abbott's Revenge
这个迷宫问题还是挺好玩的,多加了一个转向的问题,有些路口不同的进入方式会有不同的转向限制,这个会比较麻烦一点,所以定义结点结构体的时候需要加一个朝向dir.总体来说是一道BFS求最短路的问题.最后打印 ...
- 《java入门第一季》之有趣的集合小案例---获取10个【1-20之间】的随机数,要求不能重复。
import java.util.ArrayList; import java.util.Random; /* * 获取10个[1-20之间]的随机数,要求不能重复.(注意:不是获取10个数,如果单纯 ...
- Chapter 2 User Authentication, Authorization, and Security(6):服务器权限授予粒度
原文出处:http://blog.csdn.net/dba_huangzj/article/details/38867489,专题目录:http://blog.csdn.net/dba_huangzj ...
- Linux的文件系统及其硬盘分区挂载原理
如果您是一位新手,也许 您还不知道如何把文件从Windows拷贝到Linux上吧?下面,我们将说明Unix文件系统以及mount的工作过程,然后再比较详细地讨论. mount的使用和有关选项.如果您已 ...
- 小强的HTML5移动开发之路(12)——从一个多媒体标签说起
来自:http://blog.csdn.net/dawanganban/article/details/18136813 一.视频播放 <html> <head> <ti ...
- H5学习之旅-H5的框架(13)
H5框架语法介绍 :frame:框架对于页面的设计有很大的作用 frameSet:框架集标签定义如何将窗口分割为框架 ,每一个frameset定义一些列行或者列,rowS/COLS规定了每行或者每列占 ...
- python模块:调用系统命令模块subprocess等
http://blog.csdn.net/pipisorry/article/details/46972171 Python经常被称作"胶水语言",因为它能够轻易地操作其他程序,轻 ...
- Caffe + Ubuntu 15.04 + CUDA 7.0 安装以及配置
作为小码农的我,昨天就在装这个东东了,主要参考第一篇博文,但是过程发现很多问题,经过反反复复,千锤百炼,终于柳暗花明,我把这个caffe给搞定了,是故,我发布出来,后之来者,欲将有感于斯文~ 本分分为 ...