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开发环境的主要内容,如果未能解决你的问题,请参考以下文章
PHP - CentOS下开发运行环境搭建(Apache+PHP+MySQL+FTP)
基于CentOS 6.8平台最新源代码包编译安装LNMP环境搭建(Nginx+MySQL+PHP)