nginx,mysql, php总结
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了nginx,mysql, php总结相关的知识,希望对你有一定的参考价值。
nginx安装所需环境Nginx 是 C语言 开发,建议在 Linux 上运行,当然,也可以安装 Windows 版本,本篇则使用 CentOS 7 作为安装环境。
一. GCC——GNU编译器集合(GCC可以使用默认包管理器的仓库(repositories)来安装,包管理器的选择依赖于你使用的Linux发布版本,包管理器有不同的实现:yum是基于Red Hat的发布版本;apt用于Debian和Ubuntu;yast用于SuSE Linux等等。)
yum install gcc
二. PCRE pcre-devel 安装
PCRE(Perl Compatible Regular Expressions) 是一个Perl库,包括 perl 兼容的正则表达式库。nginx 的 http 模块使用 pcre 来解析正则表达式,所以需要在 linux 上安装 pcre 库,pcre-devel 是使用 pcre 开发的一个二次开发库。nginx也需要此库。命令:
yum install -y pcre pcre-devel
三. zlib 安装
zlib 库提供了很多种压缩和解压缩的方式, nginx 使用 zlib 对 http 包的内容进行 gzip ,所以需要在 Centos 上安装 zlib 库。
yum install -y zlib zlib-devel
四. OpenSSL 安装
OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及 SSL 协议,并提供丰富的应用程序供测试或其它目的使用。
nginx 不仅支持 http 协议,还支持 https(即在ssl协议上传输http),所以需要在 Centos 安装 OpenSSL 库。
yum install -y openssl openssl-devel
官网下载
1.直接下载.tar.gz安装包,地址:https://http://nginx.org/en/download.html
2.使用wget命令下载(推荐)。
wget -c https://nginx.org/download/nginx-1.16.0.tar.gz
我下载的是nginx-1.16.0.tar.gz版本
解压
依然是直接命令:
建议下载到 /usr/local/src 路劲下,编译源码
tar -zxvf nginx-1.15.0.tar.gz
cd nginx-1.15.0
配置
使用默认配置- 编译参数
./configure
编译安装
make
make install
查找安装路径:
whereis nginx
启动、停止nginx
cd /usr/local/nginx/sbin/
./nginx
./nginx -s stop
./nginx -s quit
./nginx -s reload
./nginx -s quit:此方式停止步骤是待nginx进程处理任务完毕进行停止。
./nginx -s stop:此方式相当于先查出nginx进程id再使用kill命令强制杀掉进程。
查询nginx进程:
ps aux|grep nginx
重启 nginx
Nginx配置文件注释:
[[email protected] conf]# vim nginx.conf
worker_processes 1; #worker进程的数量
events #事件块的开始
worker_connections 1024; #每个worker进程支持的最大连接数
#事件块的结束
http #HTTP区块的开始
include mime.types; #Nginx支持媒体类型库文件
default_type application/octet-stream; #默认的媒体类型
sendfile on; #开启高速传输模式
keepalive_timeout 65; #连接超时
server #第一个server区块的开始
listen 80; #提供服务的端口,默认为80
server_name www.nautilus.org ; #提供服务的域名主机
location / #第一个location区块的开始
root html/www; #站点的根目录,相当于Nginx的安装目录
index index.html index.htm; #默认的首页文件,多个使用空格隔开
#第一个location区块的结束
error_page 500 502 503 504 /50x.html; #出现对应的http状态码是,使用50x.html回应客户
location = /50x.html #location区块的开始,访问50x.html
root html; #指定对应的站点目录为html
#HTTP区块的结束
操作步骤
[[email protected] nginx]# ls
client_body_temp fastcgi_temp logs sbin uwsgi_temp
conf html proxy_temp scgi_temp
[[email protected] nginx]# cd html
[[email protected] html]#
[[email protected] html]# mkdir www
[[email protected] html]#
[[email protected] html]# cd www
[[email protected] www]# ls
index.html
[[email protected] www]# vim index.html
hello localhost
[[email protected] nginx]# vim /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
172.31.1.32 www.nautilus.org
1.先停止再启动(推荐):
对 nginx 进行重启相当于先停止再启动,即先执行停止命令再执行启动命令。如下:
./nginx -s quit
./nginx
2.重新加载配置文件:
当 ngin x的配置文件 nginx.conf 修改后,要想让配置生效需要重启 nginx,使用-s reload不用先停止 ngin x再启动 nginx 即可将配置信息在 nginx 中生效,如下:
./nginx -s reload
启动成功后,在浏览器可以看到这样的页面:
msyql是一个开源的关系型数据库系统,非常快、可靠、可扩展且易于使用。
安装方式:
1.源码安装
2.二进制文件安装
3.yum安装或自定制rpm安装
下载地址:
wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.22.tar.gz
安装所需
yum -y install cmake bison git ncurses-devel gcc gcc-c++
groupadd mysql
useradd -g mysql mysql
解压
tar zxvf mysql-5.6.38.tar.gz
mkdir /usr/local/mysql
mkdir /usr/local/mysql/data
cd mysql-5.6.22/
配置编译参数
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DMYSQL_DATADIR=/usr/local/mysql/data -DMYSQL_TCP_PORT=3306 -DMYSQL_USER=mysql -DENABLE_DOWNLOADS=1
编译安装
make
make install
修改目录属主权限
chown -R mysql:mysql /usr/local/mysql/data/
chown -R mysql:mysql /usr/local/mysql/
数据库初始化
scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data/mysql --pid-file=/usr/local/mysql/data/mysql/mysql.pid --tmpdir=/tmp
chown -R mysql:mysql my.cnf
vim my.cnf
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
port = .....
server_id = .....
socket = /usr/local/mysql/mysql.sock
log-error= /usr/local/mysql/data/error.log
pid-file = /usr/local/mysql/data/mysql.pid
cd /usr/local/mysql/support-files
mysql启动
./mysql.server start
cd /usr/local/mysql/bin
./mysql -u root -p
php安装
下载 PHP 源码包
wget http://cn2.php.net/distributions/php-5.6.0.tar.xz
解压
xz -d php-5.6.0.tar.xz
tar xf php-5.6.0.tar -C /usr/local/src/
安装所需
yum install zlib-devel libxml2-devel libjpeg-devel libjpeg-turbo-devel
yum install freetype-devel libpng-devel gd-devel libcurl-devel libxslt-devel bz2-devel
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo
yum -y install libmcrypt-devel mhash mcrypt
创建 www 用户
groupadd www
useradd -g www -s /sbin/nologin -M www
编译安装
cd /usr/local/src/php-5.6.0/
./configure --prefix=/usr/local/php56 --with-config-file-path=/usr/local/php56/etc --enable-inline-optimization --disable-debug --disable-rpath --enable-shared --enable-opcache --enable-fpm --with-fpm-user=www --with-fpm-group=www --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-gettext --enable-mbstring --with-iconv --with-mcrypt --with-mhash --with-openssl --enable-bcmath --enable-soap --with-libxml-dir --enable-pcntl --enable-shmop --enable-sysvmsg --enable-sysvsem --enable-sysvshm --enable-sockets --with-curl --with-zlib --enable-zip --with-bz2 --with-readline--with-gd
make
make install
cd /usr/local/src/php-5.6源码包
配置文件:
cp php.ini-development /usr/local/php56/etc/php.ini
php-fpm 服务
cp /usr/local/php56/etc/php-fpm.conf.default /usr/local/php56/etc/php-fpm.conf
cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm56 (php-fpm的可执行文件)
chmod +x /etc/init.d/php-fpm56
启动 php-fpm(nginx与 php沟通 )
service php-fpm56 start
Starting php-fpm done
php-fpm 可用参数 start|stop|force-quit|restart|reload|status
添加 PHP 命令到环境变量
编辑 /etc/profile ,将:
PATH=$PATH:$HOME/bin
改为:
PATH=$PATH:$HOME/bin:/usr/local/php56/bin
使 PHP 环境变量生效:
source /etc/profile
查看看 PHP 版本
php -v
PHP 5.6.0(cli)(built:Sep23201403:44:18)Copyright(c)1997-2014The PHP GroupZendEngine v2.6.0,Copyright(c)1998-2014ZendTechnologies
以上是关于nginx,mysql, php总结的主要内容,如果未能解决你的问题,请参考以下文章
总结windows下单独配置php7,mysql8 ,nginx