云服务器促销,免费安装宝塔面板!
开启左侧

[服务器环境] 如何搭建Linux+Nginx+MySQL+PHP环境?

[复制链接]
当流科技 发表于 2018-4-15 00:00:43 | 显示全部楼层 |阅读模式

本站会员必须 邮箱验证成功后 才能发帖。马上注册查阅更多教程,下载海量资源,让你轻松玩做站

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
1.0 安装环境:CentOS-7-x86_64-Minimal-1607
系统约定
软件源代码包存放位置:/usr/local/src
源码包编译安装位置:/usr/local/软件名字
2.0关闭防火墙
[root@hushuai ~]# systemctl stop firewalld.service    //暂时关闭防火墙
[root@hushuai ~]# systemctl disable firewalld.service    //开机禁止启动防火墙

3 \8 @% m: \" i& O
2.1关闭selinux
[root@hushuai ~]# setenforce 0    //暂时禁用selinux
[root@hushuai ~]# vi /etc/selinux/config
#SELINUX=enforcing #注释掉
#SELINUXTYPE=targeted #注释掉
SELINUX=disabled #增加          //永久关闭selinux

: F7 B1 n- D' }7 B$ l( v
2.2清除MariaDB
[root@localhost ~]# rpm -qa | grep mariadb //查看centos7系统自带mariadb数据库
mariadb-libs-5.5.47-1.el7_2.x86_64
[root@hushuai ~]# yum remove mariadb-libs    //删除系统自带数据库

6 r6 J# ^; H+ m* e$ k4 B' I
2.3安装编译工具及库文件
[root@hushuai ~]# yum install -y apr* autoconf automake bison cloog-ppl compat* cpp fontconfig fontconfig-devel gcc gcc-c++ gtk+-devel gd glibc kernel kernel-headers keyutils keyutils-libs-devel krb5-devel libcom_err-devel libpng libpng-devel libjpeg* libsepol-devel libselinux-devel libstdc++-devel libtool* libXpm* libtiff libtiff* mpfr ntp patch pcre-devel php-common php-gd policycoreutils telnet t1lib t1lib* nasm nasm* wget zlib-devel     //安装依赖包
2 p9 u& K. Z) T
2.4编译安装MySQL
2.4.1安装cmake
[root@hushuai ~]# cd /usr/local/src/    //软件包存放目录 ,把安装软件考到此目录下
[root@localhost src]# tar xf cmake-3.6.3.tar.gz      //解压cmake
[root@localhost src]# cd cmake-3.6.3      //进入cmake安装目录
[root@localhost cmake-3.6.3]# ./configure       //配置
[root@localhost cmake-3.6.3]# make    //编译
[root@localhost cmake-3.6.3]# make install   //安装
' S' v9 b% a1 y: C& f
2.4.3安装MySQL
[root@hushuai ~]# groupadd mysql    //添加mysql
[root@hushuai ~]#useradd -g mysql mysql -s /bin/false   //创建用户mysql并加入到mysql组且不允许mysql用户直接登录系统
[root@hushuai ~]# mkdir -p /data/mysql   //创建MySQL数据库存放目录
[root@hushuai ~]# chown -R mysql:mysql /data/mysql    //设置MySQL数据库存放目录权限
[root@hushuai ~]# mkdir -p /usr/local/mysql     //创建MySQL安装目录
[root@localhost ~]# cd /usr/local/src/      //切换至软件包存放目录
[root@localhost src]# tar xf mysql-5.6.33.tar.gz     //解压
[root@localhost src]# cd mysql-5.6.33     //进入目录
[root@localhost mysql-5.6.33]#cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mysql -DSYSCONFDIR=/etc -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci   //配置 根据服务需求配置
[root@localhost mysql-5.6.33]# make    //编译
[root@localhost mysql-5.6.33]# make install   //安装
[root@localhost ~]#rm -rf /etc/my.cnf    //删除系统默认的配置文件(如果默认没有就不用删除)
[root@localhost ~]#cd /usr/local/mysql/     //切换至MySQL安装目录
[root@localhost mysql]#./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql    //生成mysql系统数据库
[root@localhost mysql]#ln -s /usr/local/mysql/my.cnf /etc/my.cnf   //添加到/etc目录的软连接
[root@localhost mysql]# cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld   //MySQL加入系统启动
[root@localhost mysql]# chmod 755 /etc/init.d/mysqld   //增加执行权限
[root@localhost mysql]# chkconfig mysqld on    //加入开机启动
[root@localhost mysql]# vim /etc/rc.d/init.d/mysqld   //编辑 46行和47行目录
basedir=/usr/local/mysql    //等号后面填写MySQL程序安装路径
datadir=/data/mysql   //等号后面填写MySQL数据库存放目录
[root@hushuai mysql]# systemctl daemon-reload    //守护进程重新加载
[root@localhost mysql]# systemctl start mysql.service    //启动mysql
* a% M# p  l/ }5 x7 R& e9 \
[root@localhost mysql]# vim /etc/profile   //MySQL服务加入系统环境变量,在最后添加下行
export PATH=$PATH:/usr/local/mysql/bin

6 Q/ w7 ~4 i4 G8 E+ a6 C2 Q( Q
[root@localhost ~]# source /etc/profile   //使配置立刻生效

' R/ R$ T" r7 e; Q+ |+ I
下面这两行把MySQL的库文件链接到系统默认的位置,这样在编译类似PHP等软件时可以不用指定MySQL的库文件地址。
ln -s /usr/local/mysql/lib/mysql /usr/lib/mysql
ln -s /usr/local/mysql/include/mysql /usr/include/mysql
[root@localhost ~]# mkdir /var/lib/mysql    //创建目录
[root@localhost ~]# ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock   //添加软链接
[root@localhost ~]#mysql_secure_installation  //设置MySQL密码提示按Y 回车输入2次密码
[root@localhost ~]# mysql -uroot –p     //使用root登录,输入密码进入。
[root@hushuai ~]# ps -ef|grep mysql  //查看进程或端口

# `% A% W0 v# `+ E
二、安装Nginx
1、安装pcre
[root@localhost ~]# cd /usr/local/src/
[root@localhost src]# mkdir /usr/local/pcre
[root@localhost src]# tar xf pcre-8.39.tar.gz
[root@localhost src]# cd pcre-8.39
[root@localhost pcre-8.39]# ./configure --prefix=/usr/local/pcre
[root@localhost pcre-8.39]# make
[root@localhost pcre-8.39]# make install
/ T- V/ q! a! n4 ]5 o; k
2、安装openssl
[root@localhost ~]# cd /usr/local/src/
[root@localhost src]# mkdir /usr/local/openssl
[root@localhost src]# tar xf openssl-1.0.1c.tar.gz
[root@localhost src]# cd openssl-1.0.1c
[root@localhost openssl-1.0.1c]# ./config --prefix=/usr/local/openssl
[root@localhost openssl-1.0.1c]# make
[root@localhost openssl-1.0.1c]# make install     //      注(如出语法错误 解决rm /usr/bin/pod2man
[root@localhost ~]# vim /etc/profile   //添加下面内容
export PATH=$PATH:/usr/local/openssl/bin
[root@localhost ~]# source /etc/profile
" V' @. C+ G8 x
3、安装zlib
[root@localhost ~]# cd /usr/local/src/

. G# n; Y& M# N4 Y
[root@localhost src]# mkdir /usr/local/zlib

) `  ~% f. B1 k3 U
[root@localhost src]# tar xf zlib-1.2.8.tar.gz
+ k$ j. W, e' ?) r4 d7 C& |
[root@localhost src]# cd zlib-1.2.8
% t+ O" G% w5 h3 p  K
[root@localhost zlib-1.2.8]# ./configure --prefix=/usr/local/zlib
: F, }  M# w! k- C# E
[root@localhost zlib-1.2.8]# make
) e/ T  X! B" G3 {
[root@localhost zlib-1.2.8]# make install

" C! N) ]5 j* h- Q0 N3 c0 o0 `8 d$ ]  M8 r
4、安装Nginx
[root@localhost ~]# groupadd www

" x' w- r! N+ l9 A+ a
[root@localhost ~]# useradd -g www www -s /bin/false
4 l% [/ Z3 W# a' u- p
[root@localhost ~]# cd /usr/local/src
+ f. t' g" X/ Z- x
[root@localhost src]# tar xf nginx-1.10.2.tar.gz

- P) t) l2 c# U- }( G% T
[root@localhost src]# cd nginx-1.10.2
" x# A. E2 e" z5 t0 }+ ~) P
[root@localhost nginx-1.10.2]# ./configure --prefix=/usr/local/nginx --without-http_memcached_module --user=www --group=www --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module --with-openssl=/usr/local/src/openssl-1.0.1c --with-zlib=/usr/local/src/zlib-1.2.8 --with-pcre=/usr/local/src/pcre-8.39

' ^3 F9 J  ?* {, ^/ w. P
注意:--with-openssl=/usr/local/src/openssl-1.0.1c --with-zlib=/usr/local/src/zlib-1.2.8 --with-pcre=/usr/local/src/pcre-8.39指向的是源码包解压的路径,而不是安装的路径,否则会报错
[root@localhost nginx-1.10.2]# make

$ c1 b3 R& ]* e5 I. \; H
[root@localhost nginx-1.10.2]# make install

( w7 a( Q% a# K( ^" M- h. q. V
[root@localhost nginx-1.10.2]# /usr/local/nginx/sbin/nginx   //#启动Nginx
3 B. y% q1 z, D
[root@localhost nginx-1.10.2]# vim /etc/rc.d/init.d/nginx   // #设置nginx开机启动 编辑启动文件添加下面内容
3 V6 y+ S; {2 i4 W9 Y$ d
  1. 7 |8 r5 p: E6 i, d/ j
复制代码
  1. #!/bin/sh9 e/ M  O4 |& O) {
  2. #
    ' @" J% b2 C; e' e+ _7 ]. X
  3. # nginx - this script starts and stops the nginx daemon8 g2 @- k7 D( v- _. C$ ^
  4. #/ m: z" F! n  @+ n: a, S( ^/ e
  5. # chkconfig: - 85 15' E, Z, t/ E" {# m& w- b, v6 Z2 C  p
  6. # description: Nginx is an HTTP(S) server, HTTP(S) reverse \
    2 n, ^. a3 R( G- s7 c9 T- H# s
  7. # proxy and IMAP/POP3 proxy server2 ^+ w* t- N/ ~; M* @* \+ F
  8. # processname: nginx
    4 W& s+ N) Y. l% O
  9. # config: /etc/nginx/nginx.conf
    & e; I& Z  K- E1 z: h
  10. # config: /usr/local/nginx/conf/nginx.conf
    * f# d. K: G. ]
  11. # pidfile: /usr/local/nginx/logs/nginx.pid) ?3 F) \+ Y8 M7 E- ~
  12. # Source function library.0 }- T, W& }  m: Z; L/ q- l$ l
  13. . /etc/rc.d/init.d/functions
    5 V$ G$ D/ z7 ?6 a) F5 P( J
  14. # Source networking configuration.! O% N8 O3 U- _" K2 x* n4 w" T
  15. . /etc/sysconfig/network
    ' p! x' d2 @& [0 G9 U
  16. # Check that networking is up.7 w) _4 E' Q: t7 k$ U- X
  17. [ "$NETWORKING" = "no" ] && exit 01 n" k: `/ K6 l" `* K5 t
  18. nginx="/usr/local/nginx/sbin/nginx"
    + X: J9 e4 H; H9 `( s' a( E
  19. prog=$(basename $nginx)
    8 w5 w+ ~9 h( ?) t9 j
  20. NGINX_CONF_FILE="/usr/local/nginx/conf/nginx.conf"" @4 r" I$ [/ }2 W
  21. [ -f /etc/sysconfig/nginx ] && . /etc/sysconfig/nginx
    ' h& `9 K: l3 b8 F
  22. lockfile=/var/lock/subsys/nginx* ~1 E# {, W6 Z& c! `( B8 j
  23. make_dirs() {
    , N0 K4 @" N& W9 e
  24. # make required directories
    * @: s" B: m! |7 b- z# E+ F
  25. user=`$nginx -V 2>&1 | grep "configure arguments:" | sed 's/[^*]*--user=\([^ ]*\).*/\1/g' -`4 j* u5 i/ k$ ?5 d; \
  26. if [ -z "`grep $user /etc/passwd`" ]; then
    1 D5 S: @" D( a" w7 C
  27. useradd -M -s /bin/nologin $user
    / P# c4 l6 X5 G4 O( `- z' y) U
  28. fi
    9 w$ X. ?; Z) A$ @. e
  29. options=`$nginx -V 2>&1 | grep 'configure arguments:'`
    : H( ^+ X7 P- M
  30. for opt in $options; do
    " F6 w) c) K" h- o$ A
  31. if [ `echo $opt | grep '.*-temp-path'` ]; then
    $ m/ \. o9 C0 n4 n
  32. value=`echo $opt | cut -d "=" -f 2`
    6 d) R& h% ~  ?; m
  33. if [ ! -d "$value" ]; then
    5 o- b. h- z* N0 Q7 D
  34. # echo "creating" $value
    ) k# B0 {$ O0 \7 {* N4 c+ S6 t* T/ a. J
  35. mkdir -p $value && chown -R $user $value
    ' ?7 ^! \( x: W, f
  36. fi5 w. I' P% z1 V  s
  37. fi. `! E) X% u2 j2 h2 j1 t( l  f3 L
  38. done
    0 G% W- z- _$ X, t
  39. }) r5 Q, x, A+ N' [  V8 c2 `) d
  40. start() {* M% U, S. r6 T; G
  41. [ -x $nginx ] || exit 5
    ( @2 Z4 ^# b( a* x- o, u
  42. [ -f $NGINX_CONF_FILE ] || exit 6
    8 R9 w* J3 t0 T* l# M" K2 d  M; X
  43. make_dirs
    1 {7 E$ o" Z) }
  44. echo -n [        DISCUZ_CODE_1        ]quot;Starting $prog: "& K/ D4 S& s2 J  B( a. P" w
  45. daemon $nginx -c $NGINX_CONF_FILE; T2 ^( s+ P7 i. h3 J
  46. retval=$?  T+ Q; z7 r" n6 A
  47. echo; f# Y' _3 B" k4 t- c- d3 m
  48. [ $retval -eq 0 ] && touch $lockfile
    ( F) x, \# M4 f- _0 [
  49. return $retval" M$ j7 U+ F. F! c3 y
  50. }4 w5 F; K7 T2 N2 ]: ~- _
  51. stop() {! N1 S" t$ J; i1 O* ~6 R
  52. echo -n [        DISCUZ_CODE_1        ]quot;Stopping $prog: "
    8 \. w; A9 f+ m3 {$ \! h
  53. killproc $prog -QUIT6 ~, k" \' S1 w( r/ z
  54. retval=$?
    4 A' @3 S1 W1 @; A# h0 {- H
  55. echo% l- l4 O6 o! E0 G8 ]( g
  56. [ $retval -eq 0 ] && rm -f $lockfile
    7 N$ }) f2 e6 ]  p8 U
  57. return $retval
    2 H; n+ _9 j& _+ h6 o
  58. }" `0 L6 ~7 E$ F
  59. restart() {; w3 _/ D5 q- j0 E8 U! G
  60. #configtest || return $?7 p" j8 L9 G* y5 M( p! T
  61. stop1 S& c5 G: R9 A: G" V/ I$ a! f
  62. sleep 18 d3 U+ p- s) d
  63. start
    : \7 \4 p3 U/ b! g
  64. }3 \/ {$ q: e/ I' O1 O
  65. reload() {7 T7 X+ B* B! H8 c/ N: @9 i
  66. #configtest || return $?; n5 `1 n3 o0 l+ L8 R2 C
  67. echo -n [        DISCUZ_CODE_1        ]quot;Reloading $prog: "7 @5 D& z% |& a: p
  68. killproc $nginx -HUP
    $ c1 s) e* f% B8 P
  69. RETVAL=$?# s: {" w# i' G" p( S
  70. echo
    8 x+ H) C: V$ Q5 Z0 ]+ _, I
  71. }
    * R6 G3 O& s0 Z+ z
  72. force_reload() {
    ) t. v8 \* O$ P: u, t: G6 F
  73. restart
    5 S- g+ P; Q0 j8 n. \
  74. }8 D3 z3 y/ J! J, O$ ?5 R6 E4 Z
  75. configtest() {
    " }8 r4 q6 e! W
  76. $nginx -t -c $NGINX_CONF_FILE
    9 F) V3 O* ]7 x8 d' o8 l+ Q3 y
  77. }. j: C' P( t+ b' v
  78. rh_status() {
    ; u7 F7 A" r" s7 B' `/ ~
  79. status $prog
    " t0 G: O9 O2 q5 u
  80. }0 d- g0 g5 o$ m2 u8 w4 q% t! {2 V
  81. rh_status_q() {
    ) {9 @' k* Z1 D0 F& z
  82. rh_status >/dev/null 2>&1
    % g* G0 K2 Y- r# {& [, L# D4 }
  83. }2 O2 {* b3 C, b, m
  84. case "$1" in- j) V( s+ H) Z, L/ O* }# l; K
  85. start)
    , k! M$ b, Q( p8 l  [# y4 E
  86. rh_status_q && exit 0
    % i8 m$ M$ K4 G: S% ~
  87. $1% v$ l6 Z% g, _5 ]# U3 L9 Y8 J) J
  88. ;;
      a  Z7 G4 R/ d, W2 }
  89. stop)1 a0 H5 T, A: x4 V( o: H! b; ^# ~- c
  90. rh_status_q || exit 0: e8 |% j' d' F# ^; \
  91. $1
    % l, Y" p6 S& C& N' [( M& [
  92. ;;
    3 J9 t4 e- R3 e, ], [1 [* P2 B
  93. restart|configtest)
    & l9 x* r5 g/ W9 v6 v( s
  94. $1; Q+ C' ~, f3 O  g9 t. g/ i& T3 P
  95. ;;
    ! K; E8 b2 ~9 j
  96. reload)4 [* _" b# g0 ^8 A
  97. rh_status_q || exit 7
    4 m, I! j+ [2 b
  98. $1
    0 y4 {" S/ R: g+ ^
  99. ;;
    " ?/ I2 f. a7 o8 N* E
  100. force-reload)
    : B. _! g* Z& s' O& V6 g
  101. force_reload. A1 ^% h$ D! Q, [& H9 E
  102. ;;
    9 a6 V1 u( j+ T' c- c" ?+ U9 ]
  103. status)
    4 n/ X5 r/ k+ O6 z2 z1 J
  104. rh_status2 s$ k4 C* @- h4 e- o
  105. ;;
    4 h" ~# R$ E9 x8 }% ~
  106. condrestart|try-restart)7 p% W7 D  U3 W) t1 h1 J
  107. rh_status_q || exit 0
    ( m0 m# A5 e# [9 f- j/ @5 \1 }  o. g* n
  108. ;;
    . a* _" r& p0 [1 j
  109. *)& Q& m1 H) W8 |# t6 i' m
  110. echo [        DISCUZ_CODE_1        ]quot;Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}"  k& E7 F0 U: t# `/ I. @) z8 _
  111. exit 26 H/ M4 {3 c. I- w8 \$ {6 Z7 u: T
  112. esac
复制代码

: f, m: {: I  k# o5 Z
保存退出
[root@localhost nginx-1.10.2]# chmod 775 /etc/rc.d/init.d/nginx   //赋予文件执行权限

6 i# h# I3 }" P) \% g
[root@localhost nginx-1.10.2]# chkconfig nginx on     //设置开机启动
( x! C1 g3 b  S6 J, |$ B
[root@localhost nginx-1.10.2]# /etc/rc.d/init.d/nginx restart   //重启
/ V% B& m' l5 I2 z

  1. 3 q" I2 @- o( N
复制代码
在浏览器中打开服务器IP地址,会看到下面的界面,说明Nginx安装成功。
file:///C:\Users\56916\AppData\Local\Temp\ksohtml\wpsA9F9.tmp.jpg
三、安装php
1、安装yasm
[root@localhost ~]# cd /usr/local/src/

1 o  c4 l- c5 G! j) t
[root@localhost src]# tar xf yasm-1.3.0.tar.gz
4 Z( G) V* @( `# v% u2 `5 ^
[root@localhost src]# cd yasm-1.3.0

7 H' N7 K( ]6 ?6 s* Z
[root@localhost yasm-1.3.0]# ./configure
5 i% Y& E& |' m  [! C' o
[root@localhost yasm-1.3.0]# make
9 m+ T8 T+ _2 N) [% t# Y& E* f8 u
[root@localhost yasm-1.3.0]# make install

* ?4 m3 r  f; {$ m! s8 B
2、安装libmcrypt
[root@localhost ~]# cd /usr/local/src/
; h& Q5 G0 u. B6 ?+ p: J4 z
[root@localhost src]# tar xf libmcrypt-2.5.8.tar.gz

1 L* h/ o* K/ c  g! J3 ?
[root@localhost src]# cd libmcrypt-2.5.8
/ n  W! G; @, O& q
[root@localhost libmcrypt-2.5.8]# ./configure

0 ?$ x+ D$ c5 p; b/ y$ ^
[root@localhost libmcrypt-2.5.8]# make
9 D) Q  H9 p# i
[root@localhost libmcrypt-2.5.8]# make install

# d5 R# L8 G& j4 l, R
3、安装libvpx
[root@localhost ~]# cd /usr/local/src/

% ~( x: p+ s+ i! O. G
[root@localhost src]# tar xf libvpx-1.6.0.tar.bz2

2 F% C9 b7 Y! ?1 M( T9 E
[root@localhost src]# cd libvpx-1.6.0

9 f5 c# f' X+ }$ V
[root@localhost libvpx-1.6.0]# ./configure --prefix=/usr/local/libvpx --enable-shared --enable-vp9
8 p0 W! P  l7 ^' U
[root@localhost libvpx-1.6.0]# make
! K/ W2 {$ O3 [! Z+ u
[root@localhost libvpx-1.6.0]# make install
; g( N* c* _& K& m4 A
4、安装tiff
[root@localhost ~]# cd /usr/local/src/
[root@localhost src]# tar xf tiff-4.0.6.tar.gz
[root@localhost src]# cd tiff-4.0.6
[root@localhost tiff-4.0.6]# ./configure --prefix=/usr/local/tiff --enable-shared
[root@localhost tiff-4.0.6]# make
[root@localhost tiff-4.0.6]# make install
5、安装libpng
[root@localhost ~]# cd /usr/local/src/
[root@localhost src]# tar xf libpng-1.6.26.tar.gz
[root@localhost src]# cd libpng-1.6.26
[root@localhost libpng-1.6.26]# ./configure --prefix=/usr/local/libpng --enable-shared
[root@localhost libpng-1.6.26]# make
[root@localhost libpng-1.6.26]# make install
6、安装freetype
[root@localhost ~]# cd /usr/local/src/
[root@localhost src]# tar xf freetype-2.7.tar.gz
[root@localhost src]# cd freetype-2.7
[root@localhost freetype-2.7]# ./configure --prefix=/usr/local/freetype --enable-shared
[root@localhost freetype-2.7]# make
[root@localhost freetype-2.7]# make install
7、安装jpeg
[root@localhost ~]# cd /usr/local/src/
[root@localhost src]# tar xf jpegsrc.v9b.tar.gz
[root@localhost src]# cd jpeg-9b
[root@localhost jpeg-9b]# ./configure --prefix=/usr/local/jpeg --enable-shared
[root@localhost jpeg-9b]# make
[root@localhost jpeg-9b]# make install
8、安装libgd
[root@localhost ~]# cd /usr/local/src/
[root@localhost src]# tar xf libgd-2.2.3.tar.gz
[root@localhost src]# cd libgd-2.2.3
[root@localhost libgd-2.2.3]# ./configure --prefix=/usr/local/libgd --enable-shared --with-jpeg=/usr/local/jpeg --with-png=/usr/local/libpng --with-freetype=/usr/local/freetype --with-fontconfig=/usr/local/freetype --with-xpm=/usr/ --with-tiff=/usr/local/tiff --with-xpm=/usr/local/libvpx
[root@localhost libgd-2.2.3]# make
[root@localhost libgd-2.2.3]# make install
9、安装t1lib
[root@localhost ~]# cd /usr/local/src/
[root@localhost src]# tar xf t1lib-5.1.2.tar.gz
[root@localhost src]# cd t1lib-5.1.2
[root@localhost t1lib-5.1.2]# ./configure --prefix=/usr/local/t1lib --enable-shared
[root@localhost t1lib-5.1.2]# make without_doc
[root@localhost t1lib-5.1.2]# make install
10、安装php
注意:如果系统是64位,请执行以下两条命令,否则安装php会出错(32位系统不需要执行)
[root@localhost ~]# ln -s /usr/lib64/libltdl.so /usr/lib/libltdl.so
[root@localhost ~]# \cp -frp /usr/lib64/libXpm.so* /usr/lib/
[root@localhost ~]# cd /usr/local/src/
[root@localhost src]# tar xf php-7.0.13.tar.gz
[root@localhost src]# cd php-7.0.13
[root@localhost php-7.0.13]# export LD_LIBRARY_PATH=/usr/local/libgd/lib
[root@localhost php-7.0.13]# ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-mysqli=/usr/local/mysql/bin/mysql_config --with-mysql-sock=/tmp/mysql.sock --with-pdo-mysql=/usr/local/mysql --with-gd --with-png-dir=/usr/local/libpng --with-jpeg-dir=/usr/local/jpeg --with-freetype-dir=/usr/local/freetype --with-xpm-dir=/usr/ --with-zlib-dir=/usr/local/zlib --with-iconv --enable-libxml --enable-xml --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --enable-opcache --enable-mbregex --enable-fpm --enable-mbstring --enable-ftp --enable-gd-native-ttf --with-openssl --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --without-pear --with-gettext --enable-session --with-mcrypt --with-curl --enable-ctype --enable-mysqlnd
[root@localhost php-7.0.13]# make
[root@localhost php-7.0.13]# make install
[root@localhost php-7.0.13]# cp php.ini-production /usr/local/php/etc/php.ini  //复制php配置文件到安装目录
[root@localhost php-7.0.13]# rm -rf /etc/php.ini    //删除系统自带配置文件
[root@localhost php-7.0.13]# ln -s /usr/local/php/etc/php.ini /etc/php.ini  //添加软链接到 /etc目录
[root@localhost php-7.0.13]# cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf  //拷贝模板文件为php-fpm配置文件
[root@localhost php-7.0.13]# ln -s /usr/local/php/etc/php-fpm.conf /etc/php-fpm.conf //添加软连接到 /etc目录
[root@localhost php-7.0.13]# vim /usr/local/php/etc/php-fpm.conf   //编辑
17;pid = run/php-fpm.pid   //取消前面的分号
保存退出
[root@localhost php-7.0.13]# cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf     //
[root@localhost php-7.0.13]#vim /usr/local/php/etc/php-fpm.d/www.conf    //编辑
23 user = www #设置php-fpm运行账号为www
24 group = www #设置php-fpm运行组为www
设置 php-fpm开机启动
[root@localhost php-7.0.13] # cp /usr/local/src/php-7.0.13/sapi/fpm/init.d.php-fpm /etc/rc.d/init.d/php-fpm  //拷贝php-fpm到启动目录
[root@localhost php-5.6.28]# chmod +x /etc/rc.d/init.d/php-fpm   //添加执行权限
[root@localhost php-5.6.28]# chkconfig php-fpm on  //设置开机启动
[root@localhost php-5.6.28]# vim /usr/local/php/etc/php.ini   //编辑配置文件
file:///C:\Users\56916\AppData\Local\Temp\ksohtml\wpsAA0A.tmp.jpg //此行添加以下内容
passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server,escapeshellcmd,dll,popen,disk_free_space,checkdnsrr,checkdnsrr,getservbyname,getservbyport,disk_total_space,posix_ctermid,posix_get_last_error,posix_getcwd, posix_getegid,posix_geteuid,posix_getgid, posix_getgrgid,posix_getgrnam,posix_getgroups,posix_getlogin,posix_getpgid,posix_getpgrp,posix_getpid, posix_getppid,posix_getpwnam,posix_getpwuid, posix_getrlimit, posix_getsid,posix_getuid,posix_isatty, posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,posix_setgid, posix_setpgid,posix_setsid,posix_setuid,posix_strerror,posix_times,posix_ttyname,posix_uname
#列出PHP可以禁用的函数,如果某些程序需要用到这个函数,可以删除,取消禁用。
找到202 short_open_tag = Off  //改为on支持php短标签
找到359 expose_php = on    // 改为Off禁止显示php版本的信息
找到924 date.timezone =     // 改为PRC 设置时区
找到1745 opcache.enable=0  //改为1 php支持opcode缓存
找到1748 opcache.enable_cli=1   //改为0 php支持opcode缓存
在最后一行添加:zend_extension=opcache.so #开启opcode缓存功能
保存退出
配置nginx支持php
[root@localhost php-5.6.28]# vim /usr/local/nginx/conf/nginx.conf
修改/usr/local/nginx/conf/nginx.conf 配置文件,需做如下修改
user www www; #首行user去掉注释,修改Nginx运行组为www www;必须与/usr/local/php/etc/php-fpm.conf中的user,group配置相同,否则php运行出错
       修改45行 index index.html index.htm index.php; #添加index.php
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000  
#
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;  #修改红色部分
include fastcgi_params;
}
#注意fastcgi_param行的参数,改为$document_root$fastcgi_script_name,或者使用绝对路径  去掉上面各行注释
/etc/init.d/nginx restart #重启nginx
service php-fpm start #启动php-fpm
测试篇
[root@localhost ~]# cd /usr/local/nginx/html/      //进入nginx默认网站根目录
[root@localhost html]# rm -rf /usr/local/nginx/html/*    //删除默认测试页
[root@localhost html]# vim index.php    //新建index.php文件
<?php
phpinfo();
?>
[root@localhost html]# chown www.www /usr/local/nginx/html/ -R   //设置目录所有者
[root@localhost html]# chmod 700 /usr/local/nginx/html/ -R   //设置目录权限
在浏览器中打开服务器IP地址,会看到下面的界面
! q) |) Z0 T  R2 v: G
2 @5 e9 W) i8 o. m* B# L9 m0 }
nginx配置文档.docx (241.57 KB, 下载次数: 0, 售价: 5 元宝)
当流科技-专业Discuz建站、仿站业务,专注处理discuz!论坛挂马,专注提供论坛托管维护服务! 提供Discuz论坛空间、VPS、云服务器!咨询QQ 569160956 778521512
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

精彩课程推荐

宝塔面板绑定域名无法访问后台怎么解决?

主讲:风雨兼程 服务器学院

Discuz!论坛网盘附件免跳转下载(手机版网

主讲:当流科技 Discuz插件

discuz论坛搬家教程,如何搬迁到新服务器?

主讲:风雨兼程 Discuz!教程

抱歉,当前存在网络问题或服务器繁忙,详细错

主讲:我心枫叶 Discuz!教程

宝塔面板phpmyadmin 数据库502 Bad Gateway

主讲:当流科技 服务器学院

宝塔面板mysql怎么用navicat 连接数据库呢

主讲:当流科技 服务器学院

Discuz!X3.3全新安装和升级后快速回复框丢

主讲:风雨兼程 Discuz!教程

宝塔面板如何添加和管理Mysql数据库?

主讲:xotexa372 服务器学院

商务合作

0551-66191059
service#dangliu.net
点击这里给我发消息
dz论坛/Discuz!论坛新手

关注微信公众号

QQ扫码 加 DZ技术群