CentOS 6.8 LAMP 安装配置

1.远程系统拒绝了连接:

需要关闭防火墙/etc/rc.d/init.d/iptables stop

service iptables stop

chkconfig iptables off

setenforce 0

vi /etc/sysconfig/selinux

   SELINUX=disabled      #enforcing改为disabled

依赖包安装

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 openldap-clients openldap-servers make  libtool* git tree bison pcre-devel perl gd gd-devel

安装libiconv(支持编码转换为函数)wget https://ftp.gnu.org/gnu/libiconv/libiconv-1.14.tar.gz

tar xf libiconv-1.14.tar.gz 

cd libiconv-1.14/ 

./configure --prefix=/usr/local/libconv/

make && make install

安装libmcrypt  (加密算法扩展库,支持DES, 3DES, RIJNDAEL, Twofish, IDEA, GOST, CAST-256, ARCFOUR, SERPENT, SAFER+等算法)

wget https://sourceforge.net/projects/mcrypt/files/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.gz/download

tar xf libmcrypt-2.5.8.tar.gz

cd libmcrypt-2.5.8

./configure

make && make install 

cd libltdl/ 

./configure --enable-ltdl-install    #加载动态库

make && make install

安装mhash(Mhash是基于离散数学原理的不可逆向的php加密方式扩展库,其在默认情况下不开启。 mhash的可以用于创建校验数值,消息摘要,消息认证码,以及无需原文的关键信息保存)

wget https://sourceforge.net/projects/mhash/files/mhash/0.9.9.9/mhash-0.9.9.9.tar.bz2/download

tar xf mhash-0.9.9.9.tar.bz2 

cd mhash-0.9.9.9

./configure

make && make install

注意,下面编译mcript的时候,要先编辑ld.so.conf文件!!!

vim /etc/ld.so.conf

    /usr/local/lib/

ldconfig

安装mcript(mcrypt 是 php 里面重要的加密支持扩展库,Mcrypt扩展库可以实现加密解密功能,就是既能将明文加密,也可以密文还原。)

wget https://sourceforge.net/projects/mcrypt/files/MCrypt/2.6.8/mcrypt-2.6.8.tar.gz/download

cd /usr/local/src

tar zxvf mcrypt-2.6.8.tar.gz 

cd mcrypt-2.6.8/ 

export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH    #暂时生效

./configure

make && make install

安装cmake (MySQL从5.5版本开始,通过./configure进行编译配置方式已经被取消,取而代之的是cmake工具)

wget https://cmake.org/files/v3.7/cmake-3.7.1.tar.gz

tar xf cmake-3.4.1.tar.gz

cd cmake-3.4.1

./bootstrap

make && make install

三、MySQL编译安装

新增mysql用户


1

2

groupadd -r mysql

useradd -r -g mysql mysql

新建MySQL所需目录


1

2

mkdir -p /usr/local/mysql

mkdir -p /data/mysqldb

编译安装


1

2

3

4

wget http://pkgs.fedoraproject.org/repo/pkgs/community-mysql/mysql-5.6.23.tar.gz/md5/60344f26eae136a267a0277407926e79/mysql-5.6.23.tar.gz

tar xf mysql-5.6.23.tar.gz

cd mysql-5.6.23

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1-DMYSQL_DATADIR=/data/mysqldb -DMYSQL_TCP_PORT=3306 -DENABLE_DOWNLOADS=1-DSYSCONFDIR=/etc -DWITH_SSL=system -DWITH_ZLIB=system -DWITH_LIBWRAP=0

make&& make install

修改mysql目录权限


1

2

3

4

cd /usr/local/mysql

chown -R mysql:mysql .

cd /data/mysqldb

chown -R mysql:mysql .

初始化mysql数据库


1

2

cd /usr/local/mysql

./scripts/mysql_install_db --user=mysql --datadir=/data/mysqldb

编译修改/etc/my.cnf (这里可能因为mysql 默认root用户也只有读和执行的权限,所以要chmod 644 my.conf)


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

[mysql]

 

# CLIENT #

port                           = 3306

socket                         = /data/mysqldb/mysql.sock

 

[mysqld]

 

# GENERAL #

user                           = mysql

default-storage-engine         = InnoDB

socket                         = /data/mysqldb/mysql.sock

pid-file                       /data/mysqldb/mysql.pid

 

# MyISAM #

key-buffer-size                = 32M

myisam-recover                 = FORCE,BACKUP

 

# SAFETY #

max-allowed-packet             = 16M

max-connect-errors             = 1000000

 

# DATA STORAGE #

datadir                        = /data/mysqldb/

 

# BINARY LOGGING #

log-bin                        = /data/mysqldb/mysql-bin

expire-logs-days               = 14

sync-binlog                    = 1

 

# REPLICATION #

skip-slave-start               = 1

relay-log                      = /data/mysqldb/relay-bin

slave-net-timeout              = 60

 

# CACHES AND LIMITS #

tmp-table-size                 = 32M

max-heap-table-size            = 32M

query-cache-type               = 0

query-cache-size               = 0

max-connections                = 500

thread-cache-size              = 50

open-files-limit               = 65535

table-definition-cache         = 4096

table-open-cache               = 4096

 

# INNODB #

innodb-flush-method            = O_DIRECT

innodb-log-files-in-group      = 2

innodb-log-file-size           = 64M

innodb-flush-log-at-trx-commit = 1

innodb-file-per-table          = 1

innodb-buffer-pool-size        = 592M

 

# LOGGING #

log-error                      = /data/mysqldb/mysql-error.log

log-queries-not-using-indexes  = 1

slow-query-log                 = 1

slow-query-log-file            /data/mysqldb/mysql-slow.log

同时,这个时候可能会出现报错:

在my.conf中加入

basedir=/usr/local/mysql

datadir=/usr/local/mysql/data

explicit_defaults_for_timestamp=true

复制MySQL启动文件及其命令加入PATH


1

2

3

4

5

cp support-files/mysql.server /etc/init.d/mysqld

vim /etc/profile.d/mysql.sh

    PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH

    export PATH

source /etc/profile.d/mysql.sh

启动MySQL并增加启动项


1

2

service mysqld start 

chkconfig  mysqld on

设置MySQL登录权限


1

2

3

4

drop user ‘‘@localhost;

drop user ‘‘@hostname;

update mysql.user set password=password(‘*******‘);

flush privileges;

四、Nginx编译安装

新增nginx用户


1

2

groupadd -r nginx

useradd -g nginx -r nginx

创建所需要目录


1

mkdir -pv /var/tmp/nginx/client

编译安装nginx


1

2

3

4

tar xf nginx-1.9.14.tar.gz

cd nginx-1.9.14

./configure --prefix=/usr/local/nginx --sbin-path=/usr/local/nginx/sbin/nginx --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx/nginx.pid --lock-path=/var/lock/nginx.lock --user=nginx --group=nginx --with-http_ssl_module --with-http_flv_module --with-http_stub_status_module --with-http_gzip_static_module --http-client-body-temp-path=/var/tmp/nginx/client/ --http-proxy-temp-path=/var/tmp/nginx/proxy/ --http-fastcgi-temp-path=/var/tmp/nginx/fcgi/ --http-uwsgi-temp-path=/var/tmp/nginx/uwsgi --http-scgi-temp-path=/var/tmp/nginx/scgi --with-pcre

make && make install

编辑启动脚本


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

95

96

97

98

99

100

101

102

103

104

105

106

107

108

109

110

111

112

113

114

115

116

117

118

119

120

121

122

123

124

125

126

127

128

vim /etc/rc.d/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

     

make_dirs() {   

   # make required directories   

   user=`nginx -V 2>&1 | grep "configure arguments:" sed ‘s/[^*]*--user=\([^ ]*\).*/\1/g‘ -`   

   options=`$nginx -V 2>&1 | grep ‘configure arguments:‘`   

   for opt in $options; do

       if [ `echo $opt | grep ‘.*-temp-path‘` ]; then

           value=`echo $opt | cut -d "=" -f 2`   

           if [ ! -d "$value" ]; then

               # echo "creating" $value   

               mkdir -p $value && chown -R $user $value   

           fi

       fi

   done

}   

     

start() {   

    [ -x $nginx ] || exit 5   

    [ -f $NGINX_CONF_FILE ] || exit 6   

    make_dirs   

    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   

}   

     

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

设置开机启动并启动服务


1

2

3

4

chmod +x /etc/rc.d/init.d/nginx

chkconfig --add nginx 

chkconfig nginx on

service nginx start

五、PHP编译安装

解决php安装的库依赖关系


1

2

3

4

5

cp-frp /usr/lib64/libjpeg.* /usr/lib

cp-frp /usr/lib64/libpng/usr/lib

cp -frp /usr/lib64/libldap/usr/lib/

echo /usr/local/mysql/lib >> /etc/ld.so.conf.d/mysql-x86_64.conf 

ldconfig -v

编译安装php


1

2

3

4

5

tar xf php-5.6.17.tar.gz

cd php-5.6.17

./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-iconv-dir=/usr/local --with-openssl --enable-mbstring --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --enable-mbregex --enable-mbstring --with-gd --enable-gd-native-ttf --with-mhash --enable-pcntl --enable-sockets --with-mcrypt --with-ldap --with-ldap-sasl--with-xmlrpc --enable-zip --enable-soap --with-bz2 --with-config-file-path=/etc --enable-fpm --with-config-file-scan-dir=/etc/php.d --enable-maintainer-zts

make ZEND_EXTRA_LIBS=‘-liconv‘

make install

复制PHP配置文件


1

cp php.ini-production /etc/php.ini

复制php-fpm配置文件


1

cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf

设置php-fpm启动脚本并开机启动


1

2

3

4

5

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

service php-fpm start

六、web功能基本实现

nginx,php功能整合


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

vim /etc/nginx/nginx.conf

#location ~ \.php$ {

#    root           html;

#    fastcgi_pass   127.0.0.1:9000;

#    fastcgi_index  index.php;

#    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;

#    include        fastcgi_params;

#}

#修改为

location ~ \.php$ {

    fastcgi_pass   127.0.0.1:9000;

    fastcgi_index  index.php;

    fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;

    include        fastcgi_params;

}

增加LNMP测试页面


1

2

3

4

5

6

7

8

9

10

vim /usr/local/nginx/html/test.php

<?php

$link = mysql_connect(‘127.0.0.1‘,‘root‘,‘you_passwd‘);

if($link)

echo "It‘s OK,Frank";

else

echo "Failed,Frank";

mysql_close;

phpinfo();

?>

nginx重载


1

service nginx reload

访问 http://ip/test.php,LNMP测试成功。

httpd安装

安装apr


1

2

3

4

tar xf apr-1.5.2.tar.gz

cd apr-1.5.2

./configure --prefix=/usr/local/apr

make && make install

安装apr-util


1

2

3

4

tar xf apr-util-1.5.4.tar.gz

cd apr-util-1.5.4

./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr

make && make install

安装httpd


1

2

3

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

2

3

4

5

6

7

8

9

10

11

12

--enable-so #支持DSO动态装载模块

--enable-ssl #要编译启用ssl模块(前提是需要安装openssl-devel)

--enable-cgi #启用CGI模块(默认就启用)

--enable-rewrite #URL重写(支持URL重写)

--with-zlib #这是一个压缩库(专用于网络传输)

--with-pcre #使用增强的perl正则表达式分析工具(使用这项需要安装pcre-devel,pcre:正则表达式分析器)

--with-apr=/usr/local/apr #指明apr的目录(若apr在特殊路径下)

--with-apr-util=/usr/local/apr-util/ #指明apr-util路径(若apr-util在特殊路径下

--enable-mpms-shared=all #把所有的mpm模块都编译进来而且是共享模块

--with-mpm=work #默认使用的mpm模块

--enable-modules=most(all) #还有很多其他模块,其他的动态可装载模块需要

测试httpd配置是否正常


1

/usr/local/apache/bin/apachectl -t

设置httpd服务和开机启动项


1

2

3

4

5

6

cp /usr/local/apache/bin/apachectl /etc/rc.d/init.d/httpd

vim /etc/rc.d/init.d/httpd

    #chkconfig: 35 61 61

    #description:Apache

chkconfig --add httpd

chkconfig httpd on

三、php编译安装

前期准备(补充安装,--with-xsl使用)


1

yum install libxslt-devel

安装php


1

2

3

4

5

tar xf php-5.6.17.tar.gz

cd php-5.6.17

 ./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql --with-apxs2=/usr/local/apache/bin/apxs --with-mysqli=/usr/local/mysql/bin/mysql_config --with-iconv-dir=/usr/local --with-openssl --enable-mbstring --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-bcmath --enable-shmop --enable-sysvsem -disable-inline-optimization --enable-mbregex --enable-mbstring --with-gd --enable-gd-native-ttf --with-mhash --enable-pcntl --enable-sockets --with-mcrypt --with-ldap --with-ldap-sasl --with-xmlrpc --enable-zip --enable-soap --with-bz2 --with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d --enable-maintainer-zts --with-xmlrpc=shared --with-xsl

make ZEND_EXTRA_LIBS=‘-liconv‘

make install

编译安装部分参数说明(很多加载项用途不明,从别处抄袭,前几位参数还是特别重要的,比如--with-apsx2,httpd和php整合用使用)


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

--with-mysql=/usr/local/mysql     #MySQL安装目录,对mysql的支持

--with-mysqli=/usr/local/mysql/bin/mysql_config  #mysqli扩展技术不仅可以调用MySQL的存储过程、处理MySQL事务,而且还可以使访问数据库工作变得更加稳定。 

--with-apxs2=/usr/local/apache/bin/apxs    #整合apache,apxs功能是使用mod_so中的LoadModule指令,加载指定模块到 apache,要求 apache 要打开SO模块

--with-iconv-dir=/usr/local   # 选项指令,用于PHP编译时指定iconv在系统里的路径,否则会扫描默认路径(与ZEND_EXTRA_LIBS=‘-liconv‘)。

--enable-maintainer-zts #编译成zts模块,event,worker模式使用

--with-freetype-dir   #打开对freetype字体库的支持 

--with-jpeg-dir   #打开对jpeg图片的支持 

--with-png-dir   #打开对png图片的支持 

--with-zlib-dir   #打开zlib库的支持,用于http压缩传输

--with-libxml-dir   #打开libxml2库的支持

--disable-rpath    #关闭额外的运行库文件 

--enable-bcmath    #打开图片大小调整,用到zabbix监控的时候用到了这个模块

--enable-sysvsem  #这样就使得你的PHP系统可以处理相关的IPC函数了。

--enable-inline-optimization  #优化线程

--with-curl    #打开curl浏览工具的支持 

--with-curlwrappers    #运用curl工具打开url流 

--enable-mbregex

--enable-fpm           #支持PHP-fpm,早期版本需要补丁后才有这个参数,CGI方式安装的启动程序

--enable-mbstring   #多字节,字符串的支持 

--with-mcrypt     #mcrypt算法扩展

--with-mhash      #mhash算法扩展

--with-gd          #打开gd库的支持 

--enable-gd-native-ttf   #支持TrueType字符串函数库

--with-openssl      #openssl的支持,加密传输https时用到的

--enable-pcntl   #freeTDS需要用到的,可能是链接mssql才用到

--enable-sockets     #打开sockets支持

--with-xmlrpc    #打开xml-rpc的c语言 

--enable-zip   #打开对zip的支持 

--enable-ftp   #打开ftp的支持 

--with-bz2    #打开对bz2文件的支持        

--without-iconv  #关闭iconv函数,字符集间的转换 

--with-ttf     #打开freetype1.*的支持,可以不加了 

--with-xsl     #打开XSLT文件支持,扩展了libXML2库,需要libxslt软件 

--with-gettext    #打开gnu的gettext支持,编码库用到 

--with-pear    #打开pear命令的支持,PHP扩展用的 

--enable-calendar  #打开日历扩展功能

--enable-exif    #图片的元数据支持 

--enable-magic-quotes   #魔术引用的支持 

--disable-debug    #关闭调试模式 

--with-mime-magic=/usr/share/file/magic.mime      #魔术头文件位置

#CGI方式安装才用的参数 

--enable-fastCGI            #支持fastcgi方式启动PHP

--enable-force-CGI-redirect        #重定向方式启动PHP

--with-ncurses         #支持ncurses屏幕绘制以及基于文本终端的图形互动功能的动态库

--with-gmp  #应该是支持一种规范

--enable-dbase          #建立DBA作为共享模块

--with-pcre-dir=/usr/local/bin/pcre-config    #perl的正则库案安装位置

--disable-dmalloc

--with-gdbm      #dba的gdbm支持

--enable-sigchild

--enable-sysvshm

--enable-zend-multibyte         #支持zend的多字节

--enable-wddx

--enable-soap

提供php配置文件


1

cp php.ini-production /etc/php.ini

修改httpd.conf,使其支持php,并且可以识别index.php结尾作为首页


1

2

3

AddType application/x-httpd-php  .php

AddType application/x-httpd-php-source  .phps

DirectoryIndex  index.php  index.html

四、PHP扩展

libevent编译安装(libevent是一个基于事件触发的网络库,memcached底层也是使用libevent库。)


1

2

3

4

5

6

tar xf libevent-2.0.22-stable.tar.gz

cd libevent-2.0.22-stable

./configure --prefix=/usr/local/libevent

make && make install

echo "/usr/local/libevent/lib" /etc/ld.so.conf.d/libevent.conf

ldconfig

memcached编译安装


1

2

3

4

tar xf memcached-1.4.25.tar.gz

cd memcached-1.4.25

./configure --prefix=/usr/local/memcached --with-libevent=/usr/local/libevent/

make && make install

编译memcached开机启动项(部分设置均在服务脚本中)


1

vim /etc/rc.d/init.d/memcached


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

#!/bin/bash

#

# Init file for memcached

#

# chkconfig: - 86 14

# description: Distributed memory caching daemon

#

# processname: memcached

# config: /etc/sysconfig/memcached

/etc/rc.d/init.d/functions

## Default variables

PORT="11211"

USER="root"

MAXCONN="1024"

CACHESIZE="64"

OPTIONS=""

RETVAL=0

prog="/usr/local/memcached/bin/memcached"

desc="Distributed memory caching"

lockfile="/var/lock/subsys/memcached"

start() {

        echo -n $"Starting $desc (memcached): "

        daemon $prog -d -p $PORT -u $USER -c $MAXCONN -m $CACHESIZE 

        RETVAL=$?

        echo

        [ $RETVAL -eq 0 ] && touch $lockfile

        return $RETVAL

}

stop() {

        echo -n $"Shutting down $desc (memcached): "

        killproc $prog

        RETVAL=$?

        echo

        [ $RETVAL -eq 0 ] && rm -f $lockfile

        return $RETVAL

}

restart() {

        stop

        start

}

reload() {

        echo -n $"Reloading $desc ($prog): "

        killproc $prog -HUP

        RETVAL=$?

        echo

        return $RETVAL

}

case "$1" in

  start)

        start

        ;;

  stop)

        stop

        ;;

  restart)

        restart

        ;;

  condrestart)

        [ -e $lockfile ] && restart

        RETVAL=$?

        ;;       

  reload)

        reload

        ;;

  status)

        status $prog

        RETVAL=$?

        ;;

   *)

        echo $"Usage: $0 {start|stop|restart|condrestart|status}"

        RETVAL=1

esac

exit $RETVAL


1

2

3

chmod +x /etc/rc.d/init.d/memcached

chkconfig --add memcached

service memcached start

memcached部分参数说明


1

2

3

4

5

6

7

8

9

10

11

12

-l <ip_addr>:指定进程监听的地址;

-d: 以服务模式运行;

-u <username>:以指定的用户身份运行memcached进程;

-m <num>:用于缓存数据的最大内存空间,单位为MB,默认为64MB;

-c <num>:最大支持的并发连接数,默认为1024;

-p <num>: 指定监听的TCP端口,默认为11211;

-U <num>:指定监听的UDP端口,默认为11211,0表示关闭UDP端口;

-t <threads>:用于处理入站请求的最大线程数,仅在memcached编译时开启了支持线程才有效;

-f <num>:设定Slab Allocator定义预先分配内存空间大小固定的块时使用的增长因子;

-M:当内存空间不够使用时返回错误信息,而不是按LRU算法利用空间;

-n: 指定最小的slab chunk大小;单位是字节;

-S: 启用sasl进行用户认证;

freetds编译安装(用于php连接mssql)


1

2

3

4

5

6

7

8

tar xf freetds-1.00.11.tar.gz

cd freetds-1.00.11

./configure --prefix=/usr/local/freetds --with-tdsver=7.3 --enable-msdblib --with-gnu-ld --enable-shared --enable-static

make && make install

cd /usr/local/src/php-5.6.17/ext/mssql/

/usr/local/php/bin/phpize

./configure --with-php-config=/usr/local/php/bin/php-config --with-mssql=/usr/local/freetds/

make && make install

--with-tdsver=7.3说明,具体说明参照:

http://www.freetds.org/userguide/choosingtdsprotocol.htm#TAB.PROTOCOL.BY.PRODUCT

安装php支持memcache扩展模块


1

2

3

4

5

tar zxvf memcache-2.2.7.tgz 

cd memcache-2.2.7

/usr/local/php/bin/phpize

./configure --enable-memcache --with-php-config=/usr/local/php/bin/php-config --with-zib-dir

make && make install

修改php.ini,增加freetds和memcache功能


1

2

3

4

extension_dir = "/usr/local/php/lib/php/extensions/no-debug-zts-20131226/"

extension=mssql.so

mssql.charset="GBK"

extension=memcache.so

重启httpd使生效


1

service httpd restart

编写php测试页面


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

<?php

      $link = mysql_connect(‘ip address‘,‘user‘,‘passwd‘);

      if ($link)

        echo "MySQL Success...";

      else

        echo "MySQL Failure...";

        mysql_close();

        $conn=mssql_connect(‘ip address‘,‘user‘,‘passwd‘);

        if($conn)

                echo"MSSQL Sucess...";

        else

                echo"MSSQL Failure...";

      mssql_close();

      phpinfo();

?>

测试可正常使用.

时间: 2024-11-10 13:39:17

CentOS 6.8 LAMP 安装配置的相关文章

Ubuntu 12.04下LAMP安装配置

我是一个Linux新手,想要安装一台Ubuntu 12.04版的Linux服务器,用这台服务器上的LAMP套件来运行我自己的个人网站.LAMP套件就是“Linux+Apache+Mysql+PHP这四款软件组成了一个可以使网站运行的套装工具软件.”通过安装尝试,我获得了一些成功的安装配置经验,通过本文提供给Linux网站服务器系统的入门者学习.本次安装的网站软件环境中将使用Apache2网页服务软件.MySQL5网站后台数据库软件.以及PHP5角本解释语言软件,配置成的系统也可提供FTP服务.

RabbitMQ在CentOS上的简单安装配置

安装 1.依赖Erlang,yum install erlang安装之 2.去官网下载Fedora/RHEL的rpm包,rpm -ivh rabbitmq-server-*.noarch.rpm 安装之 配置 1.启用Web管理页面:rabbitmq-plugins enable rabbitmq_management 2.启动RabbitMQ:service rabbitmq-server start 3.添加防火墙策略:允许5672(rabbitmq默认端口)和15672(Web管理端口)

Windows和Centos下Docker的安装配置

Windows和Centos下Docker的安装配置 windows环境下的安装(win10) 在Windows系统上需要利用toolbox来安装Docker,现在 Docker 有专门的 Win10 专业版系统的安装包,需要开启Hyper-V.然后才能正常安装 Hyper-V 就是虚拟机中的一种 开启Hyper-V win10专业版开启方式 键入win,搜索"windows"开打"启用或关闭windows功能",找到Hyper-V并勾选 win10家庭版开启方式

Zabbix&LAMP安装配置

监控端操作 基于LAMP架构部署Zabbix #!/bin/bash #基于LAMP架构安装Zabbix # lamp(){ #关闭防火墙&核心安全功能systemctl stop firewalld.servicesystemctl disable firewalld.service &> /dev/nullsetenforce 0sed -i "7cSELINUX=disabled" /etc/sysconfig/selinux #下载安装必要组件yum in

Centos 6.5上安装配置KVM

搭建环境 操作系统:CentOS 6.5 final x86_64 KVM:qemu-kvm-0.12.1.2-2.479.el6_7.3.x86_64 工具:Win7和vnc-viewer(先在服务器端装好VNC,通过VNC viewer连接服务器CentOS) 一.安装KVM及相关软件 1.KVM 需要有 CPU 的支持(Intel vmx 或 AMD svm),在安装 KVM 之前检查一下 CPU 是否提供了虚拟技术的支持: [[email protected] kvm]# egrep '

CentOS 6.5 yum安装配置lnmp服务器(Nginx+PHP+MySQL)

以下全部转载于  http://blog.csdn.net/lane_l/article/details/20235909 本人于今晚按照该文章使用centos 6.7 64bit安装成功,做个备份,就转过来了. --------------------------------------------------------------- 转载者语: 转载于:http://www.osyunwei.com/archives/2353.html 原文标题:CentOS 6.2yum安装配置lnmp

CentOS 6.7 FTP安装配置之vsftp

在RHEL/CentOS 系统中,默认的FTP软件是vsftp,以下是安装配置过程. 服务器:balichvm(192.168.171.51) 1).yum 安装vsftpd软件包 [[email protected] ~]# yum install vsftpd 2).启动vsftpd 服务 [[email protected] ~]# /etc/init.d/vsftpd start    #启动vsftpd服务 为 vsftpd 启动 vsftpd:         [确定] [[emai

centos EMQTTD 集群安装配置与测试验证

安装包下载地址: http://emqtt.com/downloads 在这里我们下载 emqttd-centos6.8-v2.1.2.zip 配置两台主机hosts 192.168.0.10  s1.emqtt.io 192.168.0.20  s2.emqtt.io 安装配置(s1.emqtt.io):  安装依赖包  # yum install -y lksctp-tools    安装 # unzip emqttd-centos6.8-v2.1.2.zip  #cd emqttd #vi

CentOS 7.4 Tengine安装配置详解(一)

一.安装配置Tengine: Tengine是由淘宝网发起的Web服务器项目.它在Nginx的基础上,针对大访问量网站的需求,添加了很多高级功能和特性.Tengine的性能和稳定性已经在大型的网站如淘宝网,天猫商城等得到了很好的检验.它的最终目标是打造一个高效.稳定.安全.易用的Web平台. 演示环境: ?  OS:CentOS 7.4 x86_64 ?  IP:192.168.1.222 1.安装开发环境:# yum -y groupinstall "Development Tools&quo