LNMP的的编译安装全过程
一、对系统进行更新
yum update -y
lsb_release -a
二、禁用SELINUX
sed -i '/SELINUX/s/enforcing/disabled/' /etc/selinux/config
这一步需要重启服务器
三、安装系统软件以及安装编译器
yum install -y \
gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype \
freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel \
bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 \
krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap \
openldap-clients openldap-servers make bison cmake lsof rsync vixie-cron subversion \
pcre pcre-devel lrzsz wget vim-common vim-enhanced ntp sudo chkconfig openssh* \
gd gd2 gd-devel gd2-devel systemtap-sdt-devel GeoIP GeoIP-devel mod_geoip
四、安装Google-perftools (使用tcmalloc 加速 mysql 和 nginx)
centos 》 nginx 》gperftools》libunwind 依赖顺序, 先安装libunwind
cd /usr/local/src wget -c http://download.savannah.gnu.org/releases/libunwind/libunwind-1.1.tar.gz >libunwind-1.1.tar.gz
tar zxf libunwind-1.1.tar.gz
cd libunwind-1.1 CFLAGS=-fPIC ./configure --prefix=/usr --enable-shared
make CFLAGS=-fPIC
make CFLAGS=-fPIC install
安装google-perftools
cd /usr/local/src wget -c ftp://ftp.tw.freebsd.org/pub/ports/distfiles/gperftools-2.1.tar.gz
#wget -c http://gperftools.googlecode.com/files/google-perftools-2.1.tar.gz(现在googlecode.com被封了) tar -vxzf gperftools-2.1.tar.gz
cd gperftools-2.1 ./configure \
--prefix=/usr/local/gperftools \
--disable-cpu-profiler \
--enable-shared \
--disable-heap-profiler \
--disable-heap-checker \
--disable-dependency-tracking \
--enable-frame-pointers or ./configure --prefix=/usr/local/gperftools --enable-frame-pointers make && make install
到这里安装google-perftools完成了但未生效,接下来需要使google-perftools生效
/sbin/ldconfig
echo "/usr/local/lib" > /etc/ld.so.conf.d/usr_local_lib.conf
ldconfig or
ln -s /usr/local/gperftools/lib/* /usr/local/lib
ldconfig
如果不使用此步骤,则会在Nginx测试配置文件或启动的时候报以下错误:
./nginx: error while loading shared libraries: libprofiler.so.0: cannot open shared object file: No such file or directory
或者
yum install google-perftools google-perftools-devel
五、安装mysql (需要 cmake ncurses-devel bison库)
创建mysql需要的目录、配置用户和用户组
groupadd mysql
useradd -g mysql mysql
mkdir -p /data/mysql
chown -R mysql:mysql /data/mysql
安装msyql
wget -c http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.25.tar.gz
tar zxf mysql-5.6.25.tar.gz
cd mysql-5.6.25 cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/data/mysql \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DSYSCONFDIR=/etc/ \
-DWITH_SSL=yes \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_READLINE=on \
-DWITH_READLINE=1 make && make install
配置mysql
ln -s /usr/local/mysql/lib/lib* /usr/lib/
cd /usr/local/mysql
./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql \
--pid-file=/data/mysql/mysql.pid --tmpdir=/tmp --explicit_defaults_for_timestamp cp ./support-files/my-default.cnf /etc/my.cnf
启动配置
设置mysql开机自动启动服务
cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld
chkconfig --add mysqld
chkconfig --level 345 mysqld on 修改服务配置文件
vim /etc/rc.d/init.d/mysqld
basedir=/usr/local/mysql
datadir=/data/mysql 启动mysqld服务
service mysqld start 数据库初始化及修改root密码(root初始密码为空) ./bin/mysql_secure_installation 软连接mysql
ln -s /usr/local/mysql/bin/mysql /bin 重启centos后,尝试用root连接mysql mysql -u root -p
status;
使用tcmalloc优化mysql ( 需要安装google-perftools),修改MySQL启动脚本(根据你的MySQL安装位置而定)
vim /usr/local/mysql/bin/mysqld_safe
在#executing mysqld_safe的下一行,加上:
export LD_PRELOAD=/usr/local/gperftools/lib/libtcmalloc.so 重启服务,查看tcmalloc是否生效 (第二条命令显示即生效)
service mysqld restart
lsof -n | grep tcmalloc 如果显示以下类似的信息,即表示tcmalloc生效 lsof -n|grep tcmalloc
mysqld 1824 mysql mem REG 253,0 1853008 801969 /usr/local/gperftools/lib/libtcmalloc.so.4.1.2
六、安装Nginx(需要安装pcre)
创建账户
cd /usr/local/src
/usr/sbin/groupadd webgrp
/usr/sbin/useradd -g webgrp www ulimit -SHn 65535
安装nginx
cd /usr/local/src
wget http://nginx.org/download/nginx-1.7.1.tar.gz
tar zxvf nginx-1.7.1.tar.gz
cd nginx-1.7.1 vim ./src/core/nginx.h //修改NGINX_VERSION为你希望显示的版号
//修改NGINX_VER为你希望显示的名称
//修改NGINX_VAR 为你希望显示的名称
编译安装
./configure \
--user=www \
--group=webgrp \
--prefix=/usr/local/nginx \
--conf-path=/etc/nginx/nginx.conf \
--with-http_ssl_module \
--with-http_realip_module \
--with-http_addition_module \
--with-http_gzip_static_module \
--with-http_stub_status_module \
--with-google_perftools_module \
--with-http_secure_link_module \
--with-pcre=/usr/local/src/pcre-8.37 \
--with-http_realip_module \
--with-http_image_filter_module
make && make install
or tengine
wget https://nginx-sticky-module.googlecode.com/files/nginx-sticky-module-1.1.tar.gz
wget http://tengine.taobao.org/download/tengine-2.0.0.tar.gz //可以更改版本号以及名称
wget http://labs.frickle.com/files/ngx_cache_purge-2.3.tar.gz tar zxf tengine-2.0.0.tar.gz
tar zxf ngx_cache_purge-2.3.tar.gz
tar zxf nginx-sticky-module-1.1.tar.gz
编译安装
./configure \
--prefix=/usr/local/nginx \
--error-log-path=/data/logs/error/error.log \
--http-log-path=/data/logs/access/access.log \
--pid-path=/var/run/nginx/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--conf-path=/etc/nginx/nginx.conf \
--sbin-path=/usr/sbin/nginx \
--user=www \
--group=webgrp \
--with-debug \
--with-http_ssl_module \
--with-http_realip_module \
--with-http_addition_module \
--with-http_image_filter_module \
--with-http_sub_module \
--with-http_dav_module \
--with-http_flv_module \
--with-http_mp4_module \
--with-http_gzip_static_module \
--with-http_random_index_module \
--with-http_secure_link_module \
--with-http_degradation_module \
--with-http_sysguard_module \
--with-backtrace_module \
--with-http_stub_status_module \
--with-http_upstream_check_module \
--with-google_perftools_module \
--with-http_geoip_module \
--with-http_image_filter_module \
--add-module=/usr/local/src/ngx_cache_purge-2.3 \
--add-module=/usr/local/src/nginx-sticky-module-1.1
make && make install
如果提示google-perftools错误
修改/usr/local/src/tengine-2.0.0/auto/lib/google-perftools/conf 下次文件
if [ $ngx_found = no ]; then # FreeBSD port ngx_feature="Google perftools in /usr/local/gperftools" if [ $NGX_RPATH = YES ]; then
ngx_feature_libs="-R/usr/local/gperftools/lib -L/usr/local/gperftools/lib -lprofiler"
else
ngx_feature_libs="-L/usr/local/gperftools/lib -lprofiler"
fi . auto/feature
fi
修改 nginx.conf ,令nginx可以google-perftools实现加速
vim /etc/nginx/nginx.conf #修改前面几行为: user www webgrp;
worker_processes 8;#这个要看你的处理器的数量了
error_log logs/error.log crit;
pid logs/nginx.pid;
google_perftools_profiles /tmp/tcmalloc/;
events{
use epoll;
worker_connections 65535;
} 测试和运行 /usr/sbin/nginx -t
如果显示下面信息,即表示配置没问题
nginx: the configuration file /opt/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /opt/nginx/conf/nginx.conf test is successful
输入代码运行nginx服务
/usr/sbin/nginx
ps au|grep nginx
如果显以类似下面的信息,即表示nginx已经启动
root 30038 0.0 0.0 5980 740 pts/0 S+ 00:12 0:00 grep nginx
输入代码检测是否支持加速
lsof -n | grep tcmalloc
如果显示类似下面的信息,即表示支持tcmalloc加速 (mysqld和nginx两个线程都支持)
mysqld 8297 mysql mem REG 253,0 1853334 274527 /usr/local/gperftools/lib/libtcmalloc.so.4.1.2
nginx 8353 www 9w REG 253,0 0 278727 /tmp/tcmalloc/.8353
nginx 8354 www 11w REG 253,0 0 278703 /tmp/tcmalloc/.8354
nginx 8355 www 13w REG 253,0 0 278675 /tmp/tcmalloc/.8355
nginx 8356 www 15w REG 253,0 0 278701 /tmp/tcmalloc/.8356
nginx 8357 www 17w REG 253,0 0 278702 /tmp/tcmalloc/.8357
nginx 8358 www 19w REG 253,0 0 278737 /tmp/tcmalloc/.8358
nginx 8359 www 21w REG 253,0 0 278736 /tmp/tcmalloc/.8359
nginx 8360 www 23w REG 253,0 0 278713 /tmp/tcmalloc/.8360
打开防火墙80端口、写入规则,保存并重启服务
iptables -I INPUT -p tcp --dport 80 -j ACCEPT
/etc/rc.d/init.d/iptables save
/etc/init.d/iptables restart
查看防火墙信息
/etc/init.d/iptables status
如果显示以下类似信息,即表示已经打开了80端口
1 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80
openresty安装
./configure \
--prefix=/usr/local/openresty/nginx \
--error-log-path=/data/logs/error/error.log \
--http-log-path=/data/logs/access/access.log \
--pid-path=/var/run/nginx/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--conf-path=/etc/nginx/nginx.conf \
--sbin-path=/usr/sbin/nginx \
--user=www \
--group=webgrp \
--with-pcre \
--with-pcre-jit \
--with-http_ssl_module \
--with-http_realip_module \
--with-http_addition_module \
--with-http_image_filter_module \
--with-http_sub_module \
--with-http_dav_module \
--with-http_flv_module \
--with-http_mp4_module \
--with-http_gzip_static_module \
--with-http_random_index_module \
--with-http_secure_link_module \
--with-http_degradation_module \
--with-http_stub_status_module \
--with-google_perftools_module \
--with-http_geoip_module \
--with-http_image_filter_module\
--add-module=../nginx-sticky-module-1.1\
--add-module=../nginx_upstream_check_module-master\
--add-module=../ngx_cache_purge-2.3
编写nginx 启动服务
vim /etc/init.d/nginx
#!/bin/sh
#
# nginx - this script starts and stops the nginx daemon
#
# chkconfig: - 85 15
# description: Nginx is an HTTP(S) server, HTTP(S) reverse \
# proxy and IMAP/POP3 proxy server
# processname: nginx
# config: /etc/nginx/nginx.conf
# config: /etc/sysconfig/nginx
# pidfile: /var/run/nginx.pid # Source function library.
. /etc/rc.d/init.d/functions # Source networking configuration.
. /etc/sysconfig/network # Check that networking is up.
[ "$NETWORKING" = "no" ] && exit 0 nginx="/usr/local/nginx/sbin/nginx"
prog=$(basename $nginx) NGINX_CONF_FILE="/etc/nginx/nginx.conf" [ -f /etc/sysconfig/nginx ] && . /etc/sysconfig/nginx lockfile=/var/lock/subsys/nginx start() {
[ -x $nginx ] || exit 5
[ -f $NGINX_CONF_FILE ] || exit 6
echo -n $"Starting $prog: "
daemon $nginx -c $NGINX_CONF_FILE
retval=$?
echo
[ $retval -eq 0 ] && touch $lockfile
return $retval
} stop() {
echo -n $"Stopping $prog: "
killproc $prog -QUIT
retval=$?
echo
[ $retval -eq 0 ] && rm -f $lockfile
return $retval
killall -9 nginx
} restart() {
configtest || return $?
stop
sleep 1
start
} reload() {
configtest || return $?
echo -n $"Reloading $prog: "
killproc $nginx -HUP
RETVAL=$?
echo
} force_reload() {
restart
} configtest() {
$nginx -t -c $NGINX_CONF_FILE
} rh_status() {
status $prog
} rh_status_q() {
rh_status >/dev/null 2>&1
} case "$1" in
start)
rh_status_q && exit 0
$1
;;
stop)
rh_status_q || exit 0
$1
;;
restart|configtest)
$1
;;
reload)
rh_status_q || exit 7
$1
;;
force-reload)
force_reload
;;
status)
rh_status
;;
condrestart|try-restart)
rh_status_q || exit 0
;;
*)
echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}"
exit 2
esac
保存后,设置权限,并添加到启动服务列表中
chmod 755 /etc/init.d/nginx
chkconfig --add nginx
chkconfig --level 345 nginx on
service nginx start
七、安装PHP
安装php依赖库jpeg
cd /usr/local/src
wget http://www.ijg.org/files/jpegsrc.v9.tar.gz
tar zxvf jpegsrc.v9.tar.gz
cd jpeg-9/
./configure --enable-shared --enable-static --prefix=/usr/local
make && make install
png
cd /usr/local/src
wget http://prdownloads.sourceforge.net/libpng/libpng-1.6.2.tar.gz
tar zxvf libpng-1.6.2.tar.gz
cd libpng-1.6.2/
./configure --prefix=/usr/local
make && make install
freetype
cd /usr/local/src
wget http://download.savannah.gnu.org/releases/freetype/freetype-2.4.12.tar.gz
tar zxvf freetype-2.4.12.tar.gz
cd freetype-2.4.12/
./configure --prefix=/usr/local
make && make install
libmcrypt
cd /usr/local/src wget http://downloads.sourceforge.net/mcrypt/libmcrypt-2.5.8.tar.gz
tar zxvf libmcrypt-2.5.8.tar.gz
cd libmcrypt-2.5.8/
./configure --prefix=/usr/local
make && make install /sbin/ldconfig
cd libltdl/
./configure --enable-ltdl-install
make && make install clean
libtool
cd /usr/local/src
wget http://ftpmirror.gnu.org/libtool/libtool-2.4.6.tar.gz
tar zxf libtool-2.4.6.tar.gz
cd libtool-2.4.6
./configure --prefix=/usr/local --enable-ltdl-install
make && make install
mhash
cd /usr/local/src
wget http://downloads.sourceforge.net/mhash/mhash-0.9.9.9.tar.gz
tar zxvf mhash-0.9.9.9.tar.gz
cd mhash-0.9.9.9/
./configure --prefix=/usr/local
make && make install
mcrypt
cd /usr/local/src
wget http://downloads.sourceforge.net/mcrypt/mcrypt-2.6.8.tar.gz
tar zxvf mcrypt-2.6.8.tar.gz
cd mcrypt-2.6.8/
export LDFLAGS="-L/usr/local/lib -L/usr/lib"
export CFLAGS="-I/usr/local/include -I/usr/include"
touch malloc.h
/sbin/ldconfig
./configure --prefix=/usr/local --with-libmcrypt-prefix=/usr/local
make && make install
编译安装PHP 5.6
cd /usr/local/src
wget http://cn2.php.net/distributions/php-5.6.13.tar.gz
tar zxvf php-5.6.13.tar.gz
cd php-5.6.13/
export LIBS="-lm -ltermcap -lresolv"
export DYLD_LIBRARY_PATH="/lib/:/usr/lib/:/usr/local/lib:/lib64/:/usr/lib64/:/usr/local/lib64"
export LD_LIBRARY_PATH="/lib/:/usr/lib/:/usr/local/lib:/lib64/:/usr/lib64/:/usr/local/lib64"
编译
./configure \
--prefix=/usr/local/php \
--with-config-file-path=/etc/ \
--with-config-file-scan-dir=/etc/php.d \
--with-mysql=/usr/local/mysql \
--with-mysqli=/usr/local/mysql/bin/mysql_config \
--with-iconv-dir \
--with-freetype-dir=/usr/local/lib \
--with-jpeg-dir=/usr/local/lib \
--with-png-dir=/usr/local/lib \
--with-zlib \
--with-libxml-dir=/usr \
--enable-xml \
--disable-rpath \
--enable-bcmath \
--enable-shmop \
--enable-sysvsem \
--enable-inline-optimization \
--with-curl \
--enable-mbregex \
--enable-fpm \
--enable-mbstring \
--with-mcrypt=/usr/local/lib \
--with-gd \
--enable-gd-native-ttf \
--with-openssl \
--with-mhash \
--enable-pcntl \
--enable-sockets \
--with-xmlrpc \
--enable-zip \
--enable-soap \
--enable-opcache \
--with-pdo-mysql \
--enable-embed=shared \
--enable-debug \
--enable-dtrace \
--enable-maintainer-zts
安装&&配置
make && make install
cp php.ini-development /etc/php.ini
配置php-fpm
ln -s /usr/local/mysql/lib/libmysqlclient.18.dylib /usr/lib/libmysqlclient.18.dylib
mv /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
vim /usr/local/php/etc/php-fpm.conf
#修改以下地方
[global]
pid = run/php-fpm.pid
error_log = log/php-fpm.log
emergency_restart_threshold = 10
emergency_restart_interval = 1m
process_control_timeout = 5s
pm.start_servers = 20
pm.min_spare_servers = 5
pm.max_spare_servers = 35
pm.max_children = 35 [www]
user = www
group = webgrp
修改nginx,支持php
vim /etc/nginx/nginx.conf
找到并修改以下代码 location ~ \.php$ {
root /data/www;你的文档目录
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
将php-fpm
cd /usr/local/src/php-5.5.23
cp ./sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
chmod 700 /etc/init.d/php-fpm
chkconfig --add php-fpm
chkconfig --level 345 php-fpm on
服务方式启动php-fpm
service php-fpm restart 编写测试页面 vim /data/www/index.php
输入代码
<html>
<head><title>hello php</title></head>
<body>
<?php phpinfo();?>
</body>
</html>
编译安装PHP扩展
autoconf
cd /usr/local/src
wget http://ftp.gnu.org/gnu/autoconf/autoconf-latest.tar.gz
tar zxvf autoconf-latest.tar.gz
cd autoconf-2.69/
./configure --prefix=/usr/local
make && make install
memcache
cd /usr/local/src
wget http://pecl.php.net/get/memcache-2.2.7.tgz
tar zxvf memcache-2.2.7.tgz
cd memcache-2.2.7/
export PHP_AUTOCONF=" /usr/local/bin/autoconf"
export PHP_AUTOHEADER=" /usr/local/bin/autoheader"
/usr/local/php/bin/phpize
./configure --with-php-config= /usr/local/php/bin/php-config
make && make install
添加配置
vim /etc/php.ini extension_dir = "/usr/local/php/lib/php/extensions/no-debug-zts-20121212"
extension = "memcache.so" 开启opcache扩展
[opcache]
zend_extension = "opcache.so"
opcache.memory_consumption=128
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=4000
opcache.revalidate_freq=60
opcache.fast_shutdown=1
opcache.enable_cli=1
snmp的安装
wget http://pypi.python.org/packages/source/s/setuptools/setuptools-0.6c11.tar.gz
tar zxvf setuptools-0.6c11.tar.gz
cd setuptools-0.6c11
python setup.py build
python setup.py install
下载地址http://www.net-snmp.org/download.html
./configure \
--with-perl-modules \
--prefix=/usr/local/net-snmp \
--enable-mfd-rewrites \
--with-default-snmp-version="2" \
--with-sys-contact="pingzhao1990@163.com" \
--with-sys-location="China" \
--with-logfile="/var/log/snmpd.log" \
--with-persistent-directory="/var/net-snmp"
make && make install
加入环境变量
vim /etc/rc.local
在文件的末尾添加上一行:
/usr/local/net-snmp/sbin/snmpd -c /usr/local/net-snmp/share/snmp/snmpd.conf & vim /etc/profile
找到有export关键词单独的一行前添加下面一行:
PATH=/usr/local/net-snmp/bin:/usr/local/net-snmp/sbin:$PATH
DTrace
yum install systemtap-sdt-devel
configure: error: Don’t know how to define struct flock on this system, set –enable-opcache=no 错误的解决方法
ln -s /usr/local/mysql/lib/libmysqlclient.so /usr/lib/
ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib/libmysqlclient.so.18
八、Linux内核优化&&Nginx缓存优化
LNMP的的编译安装全过程的更多相关文章
- linux-一篇文章完成lnmp环境的编译安装
lnmp环境搭建 前置条件 操作系统安装:CentOS 6.8 64位最小化安装. 配置好IP.DNS.网关.主机名 配置防火墙,开启80.3306端口 关闭访问墙 service iptables ...
- LNMP搭建01 -- 编译安装MySQL 5.6.14 和 LNMP相关的区别
[编译安装MySQL 5.6.14] [http://www.cnblogs.com/xiongpq/p/3384681.html ] [mysql-5.6.14.tar.gz 下载] http:/ ...
- LNMP源码编译安装(centos7+nginx1.9+mysql5.6+php7)
1.准备工作: 1)把所有的软件安装在/Data/apps/,源码包放在/Data/tgz/,数据放在/Data/data,日志文件放在/Data/logs,项目放在/Data/webapps, mk ...
- LNMP搭建03 -- 编译安装PHP
[编译安装PHP] 为了顺利安装PHP,先安装下面这些: [CentOS 编译 PHP 前要做的事情] yum install -y gcc gcc-c++ make zlib zlib-deve ...
- LNMP搭建02 -- 编译安装Nginx
[编译安装Nginx] 为了顺利安装Nginx,先安装下面这些: [CentOS 编译 nginx 前要做的事情] yum install gcc gcc-c++ kernel-devel yum ...
- LNMP源码编译安装
思路:根据Linux系统以及公司网站系统的信息,选择合适的安装包进行安装 一.查看系统信息 # uname -a # 查看内核/操作系统/CPU信息 # ...
- Lnmp 源码编译安装、常见错误整理
简介: Lnmp 环境的搭建还是非常简单的,之前由于博客迁移等原因,导致丢失了好多博文,这次重新整理记录一下. Lnmp 即:Linux .Nginx .Mysql .PHP Lnmp 是一套 Web ...
- lnmp源码编译安装zabbix
软件安装 Mysql 安装 tar xf mysql-5.7.13-1.el6.x86_64.rpm-bundle.tar -C mysql rpm -e --nodeps mysql-libs-5 ...
- centos下编译安装lnmp
centos下编译安装lnmp 本文以centos为背景在其中编译安装nginx搭建lnmp环境. 编译安装nginx时,需要事先安装 开发包组"Development Tools" ...
随机推荐
- activity之间參数传递&&获取activity返回值&&activity生命周期
Activity之间參数传递 A activity想将參数传给B activity时能够利用Intent将消息带过去 Intent intent = new Intent(this,BActivity ...
- Android - 警告Nested weights are bad for performance
Android - 警告Nested weights are bad for performance 本文地址: http://blog.csdn.net/caroline_wendy 原因: Lay ...
- easyui中使用的遮罩层
easyui 的 dialog 是继承自 window的,而 window中有modal这样的属性(见参考资料),就是用于打开模态的窗口的,也就是你说的有遮罩层的窗口.所以不需要额外的代码,仅需在di ...
- Android之使用picker打开相应的app
Android之使用picker打开相应的app,如果是music则可以选择是否使用相应打开的app进行播放. 在Manifest中设置,则可在选择音频文件的时候使用配置了以下的app打开 <i ...
- Android4.2.2NDK和源代码开发jni的异同
C/C++开发,在NDK和源代码中输出Log信息的方法! NDK: 1.包括头文件 #include <android/log.h> 2.Android.mk中包括库 LOCAL_LDLI ...
- libjson 编译和使用 - 1. 编译
以下转自:http://blog.csdn.net/laogong5i0/article/details/8212511 最近想用box2dEdit来编辑一下比较复杂的图形然后倒入到自己有游戏里,但b ...
- IOS之NSFileManager 和NSFileHandle
在现阶手机app的临时缓存文件渐渐增多,在app开发中对于移动设备文件的操作越来越多,我们IOS中对于文件的操作主要涉及两个类NSFileManager 和NSFileHandle,下面我们就看看如何 ...
- Back Track 5 之 Web踩点 && 网络漏洞
Web踩点 CMS程序版本探测 Blindelephant 针对WORDPRESS程序的踩点工具,通过比较插件等一系列的指纹,判断版本. 格式: Python Blindelephant.py [参数 ...
- HttpClient4.3.3 使用样例—获取静态资源
HttpClient4.3.3 使用样例—获取静态资源 学习了:http://shihlei.iteye.com/blog/2067688
- PHP基本的语法的小结
一.PHP能做什么? PHP能做什么?我认为它非常强大,仅仅要我能想到的,它都能做,仅仅是我技术能力还不行╮(╯﹏╰)╭.好吧,一张图.基本了解一下吧(ps:PHP的功能不局限于此( ^_^ )) 图 ...