CentOS 部署php开发环境

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CentOS 部署php开发环境相关的知识,希望对你有一定的参考价值。

php 安装

   yun install vim

下载php:wget http://cn.php.net/distributions/php-7.1.2.tar.gz
解压:tar -zxvf php-7.1.2.tar.gz
安装gcc:yum install gcc gcc+ libxml2-devel
编译:./configure --prefix=/usr/local/php7 --enable-fpm
make
sudo make install
执行1.php文件  /usr/local/php7/bin/php 1.php
如果使用nginx来当服务器,需要下载一个FastCGI,相关文档http://php.net/manual/zh/install.fpm.php
CGI,FAST-CGI,enable=fpm这三点不是很了解;
1. PHP 解释器是否嵌入 Web 服务器进程内部执行

mod_php 通过嵌入 PHP 解释器到 Apache 进程中,只能与 Apache 配合使用,而 cgi 和 fast-cgi 以独立的进程的形式出现,只要对应的Web服务器实现 cgi 或者 fast-cgi 协议,就能够处理 PHP 请求。

mod_php 这种嵌入的方式最大的弊端就是内存占用大,不论是否用到 PHP 解释器都会将其加载到内存中,典型的就是处理CSS、JS之类的静态文件是完全没有必要加载解释器。

2. 单个进程处理的请求数量

mod_php 和 fast-cgi 的模式在每个进程的生命周期内能够处理多个请求,而 cgi 的模式处理一个请求就马上销毁进程,在高并发的场景下 cgi 的性能非常糟糕。 

综上,如果对性能有极高的要求,可以将静态请求和动态请求分开,这时 Nginx + php-fpm 是比较好的选择。

PS: cgi、fastcgi 通常指 Web 服务器与解释器通信的协议规范,而 php-fpm 是 fastcgi 协议的一个实现。


mysql

wget http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.15.tar.gz   下载
tar -zxvf mysql-5.7.15.tar.gz    解压
yum install cmake gcc-c++ ncurses-devel perl-Data-Dumper boost boost-doc boost-devel  安装依赖
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DSYSCONFDIR=/etc -DMYSQL_USER=mysql -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DMYSQL_UNIX_ADDR=/usr/local/mysql/data/mysql.sock -DMYSQL_TCP_PORT=3306 -DENABLED_LOCAL_INFILE=1 -DENABLED_DOWNLOADS=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_DEBUG=0 -DMYSQL_MAINTAINER_MODE=1 -DWITH_SSL:STRING=bundled -DWITH_ZLIB:STRING=bundled -DDOWNLOAD_BOOST=1 -DWITH_BOOST=/usr/share/doc/boost-doc-1.41.0/

sudo make install
mysqld启动mysql mysql



Apcahe

wget http://apache.fayea.com//httpd/httpd-2.4.25.tar.gz
tar -zxf httpd-2.4.25.tar.gz
./configure --prefix=/usr/local/apache 

wget http://mirrors.tuna.tsinghua.edu.cn/apache//httpd/httpd-2.4.23.tar.gz
tar -zxf httpd-2.4.23.tar.gz
wget http://mirrors.tuna.tsinghua.edu.cn/apache//apr/apr-1.5.2.tar.gz
wget http://mirrors.tuna.tsinghua.edu.cn/apache//apr/apr-util-1.5.4.tar.gz
tar -zxf apr-1.5.2.tar.gz
tar -zxf apr-util-1.5.4.tar.gz
mv apr-1.5.2 apr
mv apr-util-1.5.4 apr-util
mv apr apr-util httpd-2.4.23/srclib/
wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.38.tar.gz
tar -zxf pcre-8.38.tar.gz&&cd pcre-8.38
./configure --prefix=/usr/local/pcre-8.38
make &&sudo make install
cd ../httpd-2.4.23
./configure --prefix=/usr/local/apache -with-pcre=/usr/local/pcre-8.38/bin/pcre-config -with-included-apr
make &&sudo make install
cd /usr/local/apache/bin/
sudo firewall-cmd --zone=public --add-port=80/tcp --permanent

sudo ./apachectl -k start

 

以上是关于CentOS 部署php开发环境的主要内容,如果未能解决你的问题,请参考以下文章

CentOS6.8系统部署lnmp环境

PHP - CentOS下开发运行环境搭建(Apache+PHP+MySQL+FTP)

基于CentOS 6.8平台最新源代码包编译安装LNMP环境搭建(Nginx+MySQL+PHP)

代码部署工具walle

基于CentOS 6.8平台最新源代码包LAMP环境搭建(Apache+MySQL+PHP)

centos 7部署并汉化Gitlab及基础操作