CentOS 7.2 下编译安装PHP7.0.10+MySQL5.7.14+Nginx1.10.1的方法详解_php实例_脚本之家

Posted by

nginx的安装

官方:

Fedora-EPEL:

一、安装前的准备工作

编译安装:

  1 yum install pcre-devel openssl-devel zlib-devel //准备好服务相关依赖包
  2 
  3 useradd -r nginx  //准备好服务账户
  4 
  5 ./configure --prefix=/usr/local/nginx --conf-path=/etc/nginx/nginx.conf --
  6 
  7 error-log-path=/var/log/nginx/error.log --http-logpath=/var/log/nginx/access.log
  8 
  9 --pid-path=/var/run/nginx.pid --lockpath=/var/run/nginx.lock
 10 
 11 --user=nginx --group=nginx --with-http_ssl_module
 12 
 13 --with-http_v2_module --with-http_dav_module --withhttp_stub_status_module
 14 
 15 --with-threads --with-file-aio
 16 
 17 make && make install //执行安装

1、yum update #更新系统

编译安装nginx选项:

  1  --prefix=/etc/nginx //安装路径
  2 
  3  --sbin-path=/usr/sbin/nginx //指明nginx程序文件安装路径
  4 
  5  --conf-path=/etc/nginx/nginx.conf //主配置文件安装位置
  6 
  7  --error-log-path=/var/log/nginx/error.log //错误日志文件安装位置
  8 
  9  --http-log-path=/var/log/nginx/access.log //访问日志文件安装位置
 10 
 11  --pid-path=/var/run/nginx.pid //指明pid文件安装位置
 12 
 13  --lock-path=/var/run/nginx.lock //锁文件安装位置
 14 
 15  --http-client-body-temp-path=/var/cache/nginx/client_temp //客户端body部分的临时文件存放路径,服务器允许客户端使用put方法提交大数据时,临时存放的磁盘路径
 16 
 17   --http-proxy-temp-path=/var/cache/nginx/proxy_temp //作为代理服务器,服务器响应报文的临时文件存放路径
 18 
 19   --http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp //作为fastcgi代理服务器,服务器响应报文的临时文件存放路径
 20 
 21   --http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp //作为uwsgi代理服务器,服务器响应报文的临时文件存放路径
 22 
 23   --http-scgi-temp-path=/var/cache/nginx/scgi_temp //作为scgi反代服务器,服务器响应报文的临时文件存放路径
 24 
 25   --user=nginx //指明以那个身份运行worker进程,主控master进程一般由root运行
 26 
 27   --group=nginx
 28 
 29   --with-http_ssl_module //表示把指定模块编译进来

2、yum install gcc gcc-c++ autoconf automake cmake bison m4 libxml2
libxml2-devel libcurl-devel libjpeg-devel libpng-devel libicu-devel
#安装php、MySQL、Nngix所依赖的包

3、下载以下包
#我把所有源文件都下载在root目录,读者可自行修改源文件存放目录

3.1 libmcrypt-2.5.8.tar.gz

3.2 mcrypt-2.6.8.tar.gz

3.3 mhash-0.9.9.9.tar.gz

3.4 zlib-1.2.8.tar.gz

#tar -zvxf libmcrypt-2.5.8.tar.gz#cd libmcrypt-2.5.8#./configure#make && make insatll

4、在安装软件时如果提示有什么依赖包没有安装的可以再执行yum install * -y

二、编译安装Nginx

1、去官网

1、通过winSCP上传nginx-1.10.1.tar.gz到/root目录下

1.1 groupadd -r nginx #新建nginx组

1.2 useradd -r -g nginx -s /bin/false nginx #新建无登录权限的nginx用户

1.3 id nginx #查看nginx组及用户

2、tar -zvxf nginx-1.10.1.tar.gz

3、cd nginx-1.10.1

4、可通过./configure
–help查看编译配置参数,也可参考

./configure --prefix=/usr/local/nginx --modules-path=/usr/local/nginx/modules --with-http_ssl_module --pid-path=/usr/local/nginx/nginx.pid --user=nginx --group=nginx

5、make && make install #编译并安装

6.1 cd /usr/local/nginx

6.2 sbin/nginx #启动,可使用sbin/nginx -?查看nginx相关操作命令

7、在/usr/lib/systemd/system目录下新建nginx.service文件,这样就可以通过systemctl
stop|start|reload
nginx.service来操作nginx,也可参考

 [Unit] Description=The NGINX HTTP and reverse proxy server After=syslog.target network.target remote-fs.target nss-lookup.target [Service] Type=forking PIDFile=/usr/local/nginx/nginx.pid ExecStartPre=/usr/local/nginx/sbin/nginx -t ExecStart=/usr/local/nginx/sbin/nginx ExecReload=/usr/local/nginx/sbin/nginx -s reload ExecStop=/usr/local/nginx/sbin/nginx -s stop PrivateTmp=true [Install] WantedBy=multi-user.target

三、编译安装MySQL

1、去官网

1、用winSCP上传mysql-boost-5.7.14.tar.gz到/root目录下

2、groupadd mysql

3、useradd -r -g mysql -s /bin/false mysql

4、用cmake编译mysql,
相关参数可以参考

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock -DSYSCONFDIR=/usr/local/mysql/etc -DSYSTEMD_PID_DIR=/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 -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 -DMYSQL_DATADIR=/usr/local/mysql/data -DWITH_BOOST=boost -DWITH_SYSTEMD=1

5、make && make install

6、配置mysql并初始化数据库

6.1 cd /usr/local/mysql #进入编译目录

6.2 chown -R mysql . #修改目录所有者

6.3 chgrp -R mysql . #修改目录组

6.4 cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
#配置mysqld服务

6.5 cp /usr/local/mysql/support-files/my-default.cnf
/usr/local/mysql/my.cnf #配置my.cnf

相关文章

Leave a Reply

电子邮件地址不会被公开。 必填项已用*标注