php开发环境安装之二

By | 2016年5月20日

php主要用于开发web端,所以除了安装php本身,web服务器和数据库也是必不可少的。以下是安装和配置nginx和mysql(mariadb)的教程。

安装nginx

使用官网的软件源,可安装最新的稳定版的Nginx:

echo '[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/7/$basearch/
gpgcheck=0
enabled=1' > /etc/yum.repos.d/nginx.repo

yum install nginx
systemctl enable nginx.service

上述命令首先添加nginx的官方源,然后安装并设置Nginx自启动。

配置nginx

nginx的配置文件位于/etc/nginx目录下,需要关心的是/etc/nginx/nginx.conf/etc/nginx/conf.d目录下的文件。

由于nginx模块化的架构,根据需求配置nginx的相关模块即可。我们使用nginx做web服务器,主要关注两块:events、http。其他模块可根据需求按照官方文档配置,可用的模块可用命令nginx -V查看。

events模块,主要配置work_connections和使用的事件模型:use kqueue/epoll等。此块基本无需配置。

http模块:这一块是web服务器的配置核心,相关参数影响提供的Http服务。常见的配置包括:

  1. access_log/error_log的文件位置、格式、缓冲;
  2. access_tokens:版本号信息;
  3. sendfile/tcp_nopush;
  4. gzip;
  5. keepalive/client_header/body等;
  6. server/upstream

最重要的当属server配置,也就是虚拟主机的配置。虚拟主机常见的配置有:

  1. 监听端口
  2. 主机名server_name
  3. 日志文件
  4. 文档根目录、url解析和规则应用

由于nginx只是web服务器,不能解析php文件。当遇到php的请求时,需要转发给php-fpm来解析。常见的转发方式包括proxy_pass和fastcgi_pass,一个通过反向代理实现,一个通过fastcgi协议通讯。fastcgi是常见的配置方式,当流量较大时,也可使用proxy_pass加上upstream的配置进行负载均衡。

作为开发环境,实际上只需要配置如下几项即可: access/error_log、监听端口和server_name、ducument root和php解析转发。配置完毕后,使用命令systemctl start nginx.server即可启动nginx。例如监听的是8080端口,打开 http://localhost:8080将会看到nginx的欢迎页。

安装mysql

CentOS 7中mariadb取代了mysql成为默认的数据库软件。由于mariadb是mysql的分支,并且保证兼容mysql社区版,使用mariadb替代mysql几乎不会有问题。使用下列命令即可安装mariadb:

yum install mariadb mariadb-server
systemct enable mariadb.service

配置mysql

mariadb的默认配置文件是/etc/my.cnf,例如你想记录每条执行的sql语句,可在[mysqld]段中增加log=/var/lib/mysql/sql.log。如无特殊需求,开发环境中使用默认配置即可。

命令system start mariadb.service可启动mariadb并执行初始化操作。如果没有更改datadir的值,默认数据目录是/var/lib/mysql。首次启动时,没有设置密码,可使用mysqladmin -uroot password "your password"命令来设置root密码。设置完密码后,下次登录将需要提供密码。

建议掌握mysqladmin/mysql/mysqldump等常用命令,并对数据库的操作和管理有一定了解。初学者可以先通过phpmyadmin或者navicator等可视化的软件进行管理,效率也高。

杂项

问题1: 为什么使用nginx?

答:nginx目前几乎等同于高性能web服务器,将是今后的发展趋势。早点使用并掌握常见的配置,效益是很大的~

问题2: mariadb和mysql有什么不同?

答:就普通使用者,说没有什么不同!在一些高级功能上,可能有细微差别,不过那是熟练掌握mysql之后才有可能用到的。

问题3: 为什么总是使用外部源来安装软件?不使用外部源不也有这些软件吗?

答:RHEL及其衍生的操作系统以稳定和安全为首要目标,保守是其一贯作风。由于保守的策略,系统官方镜像提供的软件一般不是最新版的,安装第三方可信源能够让你轻松使用最新版的软件,享受其新特性。

Category: PHP

发表评论

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