LA LN MP

L A/N MP 安装

添加epel源

yum install epel*

安装所需环境

yum install gcc gcc-c++ gcc-g77 flex bison autoconf automake bzip2-devel zlib-devel ncurses-devel libjpeg-devel libpng-devel libtiff-devel freetype-devel pam-devel openssl-devel libxml2-devel gettext-devel pcre-devel mysql-devel net-snmp-devel curl-devel perl-DBI

安装LAMP

yum -y install mysql mysql-server httpd ph pphp-mysql php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc  php-bcmath php-mbstring

设置启动服务

chkconfig --level 235 mysqld on
/etc/init.d/mysqld start
chkconfig --level 235 httpd on
/etc/init.d/httpd start

设置密码和配置文件

mysqladmin -u root password 123456
/etc/my.cnf                #mysql的配置文件
/etc/httpd/conf/httpd.conf #apache的配置文件
Listen 80
ServerName 127.0.0.1:80
DocumentRoot “/var/www/html”
DirectoryIndex index.php index.html index.html.var
/var/www/html              #apache的web存放目录 
vi /etc/php.ini            #PHP配置文件
memory_limit=128M    
post_max_size=8M    
upload_max_filesize=2M

重启httpd服务激活组件

/etc/init.d/httpd restart

测试php是否安装完成

vim /var/www/html/info.php

一条命令安装LAMP

yum -y install gcc gcc-c++ gcc-g77 flex bison autoconf automake bzip2-devel zlib-devel ncurses-devel libjpeg-devel libpng-devel libtiff-devel freetype-devel pam-devel openssl-devel libxml2-devel gettext-devel pcre-devel mysql-devel net-snmp-devel curl-devel perl-DBI mysql mysql-server httpd php php-mysql php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc  php-bcmath php-mbstring  #安装完需要修改配置文件

PHP/Nginx编译安装

安装所需环境文件

yum -y install 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 pcre-devel zlib-devel gd-devel libjpeg-devel libpng-devel freetype-devel libxml2-devel curl-devel
cp -frp /usr/lib64/libldap* /usr/lib/

安装库文件

tar zxvf libiconv-1.14.tar.gz  
cd libiconv-1.14  
./configure --prefix=/usr/local 
make && make install 
tar zxvf libmcrypt-2.5.8.tar.gz  
cd libmcrypt-2.5.8  
./configure  
make && make install 
/sbin/ldconfig  
cd libltdl  
./configure --enable-ltdl-install 
make && make install 
tar zxvf mhash-0.9.9.9.tar.gz   
cd mhash-0.9.9.9/   
./configure  
make && make install 
ln -s /usr/local/lib/libmcrypt.la /usr/lib/libmcrypt.la  
ln -s /usr/local/lib/libmcrypt.so /usr/lib/libmcrypt.so  
ln -s /usr/local/lib/libmcrypt.so.4 /usr/lib/libmcrypt.so.4  
ln -s /usr/local/lib/libmcrypt.so.4.4.8 /usr/lib/libmcrypt.so.4.4.8  
ln -s /usr/local/lib/libmhash.a /usr/lib/libmhash.a  
ln -s /usr/local/lib/libmhash.la /usr/lib/libmhash.la  
ln -s /usr/local/lib/libmhash.so /usr/lib/libmhash.so  
ln -s /usr/local/lib/libmhash.so.2 /usr/lib/libmhash.so.2  
ln -s /usr/local/lib/libmhash.so.2.0.1 /usr/lib/libmhash.so.2.0.1  
ln -s /usr/local/bin/libmcrypt-config /usr/bin/libmcrypt-config 
tar -zxvf mcrypt-2.6.8.tar.gz   
cd mcrypt-2.6.8/
/sbin/ldconfig  
./configure  
make && make install     
mkdir -p /usr/local/php5.4      
tar zxvf php-5.4.13.tar.gz     
cd php-5.4.13   
export LIBS="-lm -ltermcap -lresolv"
export DYLD_LIBRARY_PATH="/usr/local/mysql5.5/lib/:/lib/:/usr/lib/:/usr/local/lib:/lib64/:/usr/lib64/:/usr/local/lib64"
export LD_LIBRARY_PATH="/usr/local/mysql5.5/lib/:/lib/:/usr/lib/:/usr/local/lib:/lib64/:/usr/lib64/:/usr/local/lib64"
./configure --prefix=/usr/local/php5.4 \  
--with-config-file-path=/etc \  
--with-iconv-dir=/usr/local/ --with-freetype-dir \  
--with-mysql=/usr/local/mysql \  
--with-mysqli=/usr/local/mysql/bin/mysql_config \  
--with-jpeg-dir --with-png-dir --with-zlib \  
--with-mhash --enable-sockets --enable-ftp \  
--with-libxml-dir --enable-xml --disable-rpath \  
--enable-bcmath \  
--enable-shmop --enable-sysvsem \  
--enable-inline-optimization --with-curl \  
--with-curlwrappers \ 
--enable-mbregex \  
--enable-mbstring --with-mcrypt --with-gd \  
--enable-gd-native-ttf --with-openssl --with-mhash \  
--enable-pcntl --enable-sockets --with-ldap --with-ldap-sasl \  
--enable-fpm \  
--with-xmlrpc --enable-zip --enable-soap \  
--without-pear   
make ZEND_EXTRA_LIBS='-liconv' 
make install 
cp php.ini-production /etc/php.ini

PHP-FPM

cp php-5.4.13/sapi/fpm/init.d.php-fpm  /etc/init.d/php-fpm 
cd /usr/local/php5.4/etc
mv php-fpm.conf.default  php-fpm.conf 
chmod 755 /etc/init.d/php-fpm 
chkconfig --add php-fpm 
chkconfig --level 345 php-fpm on
service php-fpm start

编译Nginx

tar zxvf libunwind-0.99-alpha.tar.gz #安装libnwind
cd libunwind-0.99-alpha/
CFLAGS=-fPIC ./configure
make CFLAGS=-fPIC
make CFLAGS=-fPIC install   
tar zxvf google-perftools-1.8.tar.gz#安装google-perftools
cd google-perftools-1.8/
./configure
make && make install
echo "/usr/local/lib" > /etc/ld.so.conf.d/usr_local_lib.conf
ldconfig
tar zxvf pcre-8.32.tar.gz
cd pcre-8.32/
./configure --prefix=/usr/local/pcre#安装pcre
make && make install
tar zxvf nginx-1.0.15.tar.gz
cd nginx-1.0.15/

找到源码目录下的auto/cc/gcc文件,修改如下几行:

# debug
CFLAGS=”$CFLAGS -g”

删除以上两行

./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module --with-ipv6 --with-cc-opt='-O3' --with-google_perftools_module
make && make install

为google-perftools添加线程目录

mkdir /tmp/tcmalloc   
chmod 0777 /tmp/tcmalloc   

修改Nginx主配置文件

#pidlogs/nginx.pid;
google_perftools_profiles /tmp/tcmalloc;

Nginx内核参数优化

net.ipv4.tcp_max_tw_buckets = 6000
net.ipv4.ip_local_port_range = 1024 65000
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_syncookies = 1
net.core.somaxconn = 262144
net.core.netdev_max_backlog = 262144
net.ipv4.tcp_max_orphans = 262144
net.ipv4.tcp_max_syn_backlog = 262144
net.ipv4.tcp_synack_retries = 1
net.ipv4.tcp_syn_retries = 1
net.ipv4.tcp_fin_timeout = 1
net.ipv4.tcp_keepalive_time = 30
[root@ localhost home]#/sbin/sysctl -p

配置文件优化

worker_processes X;#X=CPU数*核心数
worker_cpu_affinity 00000001 00000010 00000100 00001000 00010000 00100000 01000000 10000000;#为每个进程分配CPU以8个CPU为例
worker_rlimit_nofile 65535;#设置打开连接数
use epoll;#使用epoll模型
worker_connections 65535;
keepalive_timeout 60;
client_header_buffer_size 4k;
open_file_cache max=65535 inactive=60s;
open_file_cache_valid 80s;
open_file_cache_min_uses 1;
tcp_nodelay on;
tcp_nopush on;
gzip on;
gzip_min_length 1k;
gzip_buffers 4 16k;
gzip_http_version 1.0;
gzip_comp_level 2;
gzip_types text/plain application/x-javascript text/css application/xml;
gzip_vary on;

原创文章,作者:双庆 李,如若转载,请注明出处:http://www.178linux.com/16723

(0)
双庆 李双庆 李
上一篇 2016-05-28
下一篇 2016-05-29

相关推荐

  • 探索这个“男人”

    一、前言 正所谓了解一个命令就得了解他的用法,正好是要了解一个人就得了解他的兴趣爱好,处事态度以及为人是怎么样的。 二、man是什么 man – an interface to the on-line reference manuals Man是manual(手册)的缩写,使用权限是所有用户,man命令提供为linux系统在线提供了很好的帮助手册…

    Linux干货 2016-05-03
  • 计算机的组成和Linux发行版本介绍

    计算机的组成及功能 计算机的五大组成,如下 各部分的作用; 控制单元和算数逻辑单元是CPU的两个主要组成部分  控制单元主要协调各组件与各单元间的工作  算数逻辑单元主要负责程序运算与逻辑判断 内存,DRANM(Dynamic Random Access Memory)动态随机访问内存;CPU读取的数据都是从内存读取来的。 输入单元,下指…

    2017-07-02
  • 第六周小练习

    详细总结vim编辑器的使用并完成一下练习 vim编辑器的基本使用 vim模式: 1、编辑模式(命令模式) 2、输入模式 3、末行模式  一、打开文件 vim /path/to/somefile 打开单个文件 如果文件存在为打开,否则保存退出时为新建 vim /path/to/somefile vim +# : 打开文件…

    Linux干货 2016-12-19
  • 网络知识及写脚本,一个又一个

    1、请描述网桥、集线器、二层交换机、三层交换机、路由器的功能、使用场景与区别。 集线器是属于物理层的设备,可以理解为一根网线中间串接出了多个接口,这么多接口共享这一根网线的带宽, 因此这些接口上的设备在使得网络时就会出现冲突,或者‘道路’挤占的情况。(所有的设备在一个广播域,冲突域中),集线器现在很少使用了。 交换机、网桥都是数据链路层的设备,网桥的出现就是…

    2017-02-10
  • python文件操作

    文件操作使用的函数open 打开read 读write 写close 关其他非常用的 seek 设置读取指针 tell 读取读取指针位置 windows中def encode(self, encoding=’utf-8′, errors=’strict’)open 和它的参数open(file,mode=&#8…

    Linux干货 2017-10-31
  • 字符串处理

      一.字符串处理 v bash 的字符串处理工具: (一)字符串切片: ${#var}: 返回字符串变量var 的长度 例: [root@lxc ~]# a="     " [root@lxc ~]# echo ${#a} 5 [root@lxc ~]# ${var:offse…

    Linux干货 2016-11-24

评论列表(6条)

  • sky138170
    sky138170 2016-06-13 14:25

    对实验很有帮助,再加上原理就更好了

  • wangquan8628
    wangquan8628 2016-06-13 14:26

    0803+简单明了,通俗易懂,操作简单,不错,点个赞!!!

  • sky138170
    sky138170 2016-06-13 14:33

    080+简单明了,通俗易懂,解释很详细!对我帮助很大!不错!不错。

    • xxrenzhe
      xxrenzhe 2016-06-13 14:59

      @sky138170回复在原始博客下是无效评论哦,要评论在《马哥教育首届IT技术博客大赛–复审阶段》帖子下才有效哦!

  • sky138170
    sky138170 2016-06-13 14:33

    0803+简单明了,通俗易懂,解释很详细!对我帮助很大!不错!不错

    • xxrenzhe
      xxrenzhe 2016-06-13 14:58

      @sky138170回复在原始博客下是无效评论哦,要评论在《马哥教育首届IT技术博客大赛–复审阶段》帖子下才有效哦!