Nginx安装配置

安装nginx

系统环境:CentOS-6.3

软件:nginx-1.7.9.tar.gz

安装方式:源码编译安装

安装位置:/usr/local/nginx

安装前提

在安装nginx前,需要确保系统安装了g++、gcc、openssl-devel、pcre-devel和zlib-devel软件。安装必须软件:

[root@webserver /]#yum install gcc-c++
[root@webserver /]#yum -y install zlib zlib-devel openssl openssl--devel pcre pcre-devel

检查系统安装的Nginx:

[root@webserver /]# find -name nginx
./nginx
./nginx/sbin/nginx
./nginx-1.7.9/objs/nginx

卸载原有的Nginx

[root@webserver /]# yum remove nginx

安装

将安装包文件上传到/usr/local/soft中执行以下操作:

[cjky@webserver ~]# su root
[root@webserver ~]# cd /usr/local
[root@webserver local]# mkdir soft
[root@webserver local]# cd soft
[root@webserver soft]#wget http://nginx.org/download/nginx-1.7.9.tar.gz

解压缩

[root@webServer soft]# tar -zxv -f nginx-1.7.9.tar.gz
[root@webServer soft]#ls
nginx-1.7.9 nginx-1.7.9.tar.gz
[root@webServer soft]# mv nginx-1.7.9 /usr/local/nginx

[root@webServer soft]# rm -rf nginx-1.7.9.tar.gz

编译安装

[root@webServer nginx]#./configure --prefix=/usr/local/nginx --conf-path=/usr/local/nginx/nginx.conf

[root@webServer nginx]# make&&make install

安装完成后 目录有如下文件:

[root@webServer nginx]# lsauto   fastcgi.conf   koi-win   mime.types.default   scgi_params
CHANGES       fastcgi.conf.default   LICENSE nginx.conf   scgi_params.default
CHANGES.ru    fastcgi_params  logs   nginx.conf.default     src
conf   fastcgi_params.default    Makefile      objs   uwsgi_params
configure     html   man   README   uwsgi_params.default
contrib   koi-utf   mime.types   sbin   win-utf 

配置

#修改防火墙配置:
[root@webserver nginx]# vi + /etc/sysconfig/iptables
#添加配置项
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
#重启防火墙
[root@webserver nginx]# service iptables restart

启动nginx

#方法1
[root@webserver nginx]# /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
#方法2
[root@webserver nginx]# cd /usr/local/nginx/sbin
[root@webserver sbin]# ./nginx

停止nginx

#查询nginx主进程号
[root@webserver nginx]# ps -ef | grep nginx
#停止进程
[root@webserver nginx]#kill -QUIT 主进程号
#快速停止
[root@webserver nginx]#kill -TERM 主进程号
#强制停止
[root@webserver nginx]# pkill -9 nginx

重启nginx

[root@webserver nginx]# /usr/local/nginx/sbin/nginx -s reload

测试是否安装成功

#测试端口
[root@webserver nginx]#netstat –na|grep 80
#浏览器中测试
http://127.0.0.1:80

MySql安装配置

1.通过yum安装

#直接安装yum源中的mysql
[root@webserver ~]#yum -y install mysql-server

2.修改mysql配置

#暂修改默认编码
[root@webserver ~]#vim /etc/my.cnf
添加default-character-set = utf8/var/lib/mysql     #mysql数据库的数据库文件存放位置
/var/log/mysqld.log   #mysql数据库的日志输出存放位置
netstat -anp   #命令来查看3306端口是否在监听

3.设置mysql随系统启动

#设置MySQL服务随系统启动自启动
[root@webserver ~]#chkconfig mysqld on
[root@webserver ~]#chkconfig --list mysqld  确保2--5为on的状态就行,然后启动MySQL服务
[root@webserver ~]#/etc/rc.d/init.d/mysqld start

4.设置root密码和用户操作

#为root用户设置密码
[root@webserver ~]/usr/bin/mysqladmin -u root password 'newPassword'
#用root用户登录MySQL服务器
[root@webserver ~]#mysql -u root -p
#查看用户信息
mysql>select user,host,password from mysql.user;#建立对test数据库有完全操作权限的名为userA的用户
#格式:grant select on 数据库名.* to 用户名@登录主机 identified by "密匙";
mysql>grant all privileges on test.* to userA@localhost identified by '用户密匙';
#创建一个可以从任何地方连接服务器的一个完全的超级用户userM
mysql>grant all privileges on *.* to userM@% identified by '密匙';
#删除root的远程授权
mysql>revoke all privileges on *.* from root@"%";
#删除root的远程用户
mysql>delete from user where user="root" and host="%";
#刷新 使以上操作生效
mysql>flush privileges;#修改userA的密码为NewPassword
mysql>set password for userA@localhost=password('NewPassword');
#删除匿名用户
mysql>delete from mysql.user where user='';

5.数据库常用sql

mysql>show databases;  #查看系统中所有数据库
mysql>drop database test;  #删除名为test的数据库,不提醒
mysql>mysqladmin drop test;  #删除名为test的数据库前,有提示mysql>show variables like 'port';  #mysql查看打开的端口mysql>create database test;  #建立名为test的数据库
mysql>use test;  #连接到数据库
mysql>show tables;  #查看数据库中已存在的表
mysql>alter table test rename test_study;  #重命名表test为test_study
mysql>describe test;  #表的详细描述

6.CentOS系统中mysqldump

#备份数据库
[root@webserver ~]mysqldump -h yourhost vi -uroot -p dbname <dbname_backup.sql
#恢复数据库
[root@webserver ~]mysqldump -h yourhost -uroot -p dbname < dbname_backup.sql
#如果只想Dump建表指令,则命令如下:
[root@webserver ~]mysqladmin -u root -p -d databasename > a.sql
#如果只想Dump插入数据的sql命令,而不需要建表命令,则命令如下:
[root@webserver ~]mysqladmin -u root -p -t databasename > a.sql
#那么只想要数据,而不想要什么sql命令时,
[root@webserver ~]mysqldump -T./ phptest driver
#其中,只有指定了-T参数才可以输出纯文本文件,表示输出数据的目录,./表示当前目录,即与mysqldump同一目录。
#如果不指定driver 表,则将卸出整个数据库的数据。每个表会生成两个文件,一个为.sql文件,包含建表执行。另一个为.txt文件,只包含数据,且没有sql指令。

PHP安装配置

[root@webserver soft]# groupadd www
[root@webserver soft]# useradd -g www -s /sbin/nologin -M www
# 安装插件
[root@webserver soft]# yum install gcc bison bison-devel zlib-devel libmcrypt-devel mcrypt mhash-devel openssl-devel libxml2-devel libcurl-devel bzip2-devel readline-devel libedit-devel –y
# 获取需安装的PHP版本
[root@webserver soft]# wget http://cn2.php.net/get/php-5.6.9.tar.gz
#解压
[root@webserver soft]# tar -zxvf php-5.6.9.tar.gz
#编译安装
[root@webserver soft]# cd php-5.6.9
[root@webserver php-5.6.9]# ./configure --prefix=/usr/local/php --with-mysql=mysqlnd --with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd --enable-mbstring --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --enable-zip --with-libxml-dir=/usr --enable-xml --enable-sockets --enable-fpm --with-fpm-user=www --with-fpm-group=www --with-mcrypt  --with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d --with-bz2 --with-readline --with-mhash --with-openssl --with-curl --with-gettext --with-iconv
[root@webserver php-5.6.9]# make&&make install

make installl无报错,安装成功

[root@webserver php-5.6.9]# cp php.ini-development /usr/local/php/etc/php.ini # 默认的php.ini没有自动生成,需要手动复制php配置文件到安装目录
[root@webserver php-5.6.9]# cd /usr/local/php/# 切换至php安装目录
[root@webserver php]# rm -rf /etc/php.ini # 删除系统自带配置文件
[root@webserver php]# ln -s /usr/local/php/etc/php.ini /etc/php.ini # 添加软链接到 /etc目录
[root@webserver php]# cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf # 拷贝模板文件为php-fpm配置文件
[root@webserver php]# vi /usr/local/php/etc/php-fpm.conf  # 编辑fpm配置文件
user = www  # 设置php-fpm运行账号为www
group = www # 设置php-fpm运行组为www
pid = run/php-fpm.pid # 取消前面的分号
:wq! # 保存退出[root@webserver php]# ln -s /usr/local/php/etc/php-fpm.conf /etc/php-fpm.conf # 添加软连接到 /etc目录
[root@webserver php]# cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm# 设置 php-fpm开机启动
[root@webserver php]# chmod +x /etc/init.d/php-fpm# 添加执行权限
[root@webserver php]# chkconfig php-fpm on # 设置开机启动[root@webserver php]# vi /usr/local/php/etc/php.ini # 编辑配置文件
找到:disable_functions =
修改为:disable_functions = passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server,escapeshellcmd,dll,popen,disk_free_space,checkdnsrr,checkdnsrr,getservbyname,getservbyport,disk_total_space,posix_ctermid,posix_get_last_error,posix_getcwd, posix_getegid,posix_geteuid,posix_getgid, posix_getgrgid,posix_getgrnam,posix_getgroups,posix_getlogin,posix_getpgid,posix_getpgrp,posix_getpid, posix_getppid,posix_getpwnam,posix_getpwuid, posix_getrlimit, posix_getsid,posix_getuid,posix_isatty, posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,posix_setgid, posix_setpgid,posix_setsid,posix_setuid,posix_strerror,posix_times,posix_ttyname,posix_uname # 列出PHP可以禁用的函数,如果某些程序需要用到这个函数,可以删除,取消禁用。
找到:;date.timezone = 修改为:date.timezone = PRC #设置时区
找到:expose_php = On 修改为:expose_php = Off #禁止显示php版本的信息
找到:short_open_tag = Off 修改为:short_open_tag = ON #支持php短标签
找到:opcache.enable=0 修改为opcache.enable=1 #php支持opcode缓存
找到:;opcache.enable_cli=1 修改为:opcache.enable_cli=0 #php支持opcode缓存
在最后一行添加:zend_extension=opcache.so #开启opcode缓存功能
:wq! #保存退出[root@webserver php]# service php-fpm start# 启动服务
[root@webserver php]# /usr/local/php/bin/php -v
PHP 5.6.3 (cli) (built: Mar 22 2016 16:55:35)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2014 Zend Technologies

[root@webserver php]# php -v
-bash: php: command not found
[root@webserver php]# export PATH=$PATH:/usr/local/php/bin
[root@webserver php]# php -v
PHP 5.6.3 (cli) (built: Mar 22 2016 16:55:35)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2014 Zend Technologies

PHP搭建成功,接下来配置Nginx支持PHP

[root@webserver php]# vi /usr/local/nginx/conf/nginx.conf# 配置修改
user www www; # 首行user去掉注释,修改Nginx运行组为www www;必须与/usr/local/php/etc/php-fpm.conf中的user,group配置相同,否则php运行出错
index index.html index.htm index.php; # 添加index.php
location ~ \.php$ {    root html;
    fastcgi_pass 127.0.0.1:9000;
    fastcgi_index index.php;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include fastcgi_params;
}
# 取消FastCGI server部分location的注释,注意fastcgi_param行的参数,改为$document_root$fastcgi_script_name,或者使用绝对路径[root@webserver php]#/etc/init.d/nginx restart # 重启nginx
[root@webserver php]#service php-fpm start # 启动php-fpm
[root@webserver php]#cd /usr/local/nginx/html/ # 进入nginx默认网站根目录
[root@webserver html]#rm -rf /usr/local/nginx/html/* # 删除默认测试页
[root@webserver html]#vi index.php # 新建index.php文件
<?php
    phpinfo();
?>
:wq! # 保存退出[root@webserver html]#chown -R www.www /usr/local/nginx/html/  # 设置目录所有者
[root@webserver html]#chmod -R 700 /usr/local/nginx/html/ # 设置目录权限

转载于:https://www.cnblogs.com/cjky/p/4210607.html

服务器架设篇-----CentOS架设WWW服务器-Nginx+Mysql+PHP相关推荐

  1. nginx 怎么重新编译安装mysql,centos 下 编译安装 nginx + mysql + php 服务

    centos 下编译安装nginx + mysql + php 服务 1.安装nginx 1.1.安装依赖包 yum install wget make gcc gcc-c++ pcre-devel ...

  2. centos php服务器搭建教程,CentOS搭建PHP服务器环境简明教程

    本文实例讲述了CentOS搭建PHP服务器环境的方法.分享给大家供大家参考,具体如下: 1. 先安装apache: yum install httpd 配置ServerName vi /etc/htt ...

  3. CentOS 5.3 安装nginx+mysql+php

    前言:本文是我撰写的关于搭建"Nginx + PHP(FastCGI)"Web服务器的第6篇文章.本系列文章作为国内最早详细介绍 Nginx + PHP 安装.配置.使用的资料之一 ...

  4. Centos 6.5 安装 Nginx+MySQL+PHP

    本文转载自:http://www.osyunwei.com/archives/2353.html 原文为安装CentOS 6.2 的步骤.博主安装6.5版本成功. 也安装了CentOS 7 版本成功. ...

  5. centos 5.6安装nginx+mysql+php(php-fpm)+phpmyadmin总结

    花了3天的时间配置了nginx+mysql+php(php-fpm)+phpmyadmin因为开始根本就没有自己动手去配置过文件,所以自己研究一天时间,在这段时间遇到很多问题,有些时候还搞不清楚fas ...

  6. ecs php mysql集成环境_在阿里云 CentOS 服务器(ECS)上搭建 nginx + mysql + php-fpm 环境...

    阿里云的云服务器(ECS)可以选择多种操作系统,打算用它运行 Drupal或者 WordPress ,你最好选择 Linux 系统,这篇文章的演示是基于阿里云的 CentOS 操作系统的服务器.我们在 ...

  7. nginx 在阿里云怎么安装mysql_在阿里云 CentOS 服务器(ECS)上搭建 nginx + mysql + php-fpm 环境...

    阿里云的云服务器(ECS)可以选择多种操作系统,打算用它运行 Drupal或者 WordPress ,你最好选择 Linux 系统,这篇文章的演示是基于阿里云的 CentOS 操作系统的服务器.我们在 ...

  8. 阿里云centos7配置php mysql_阿里云centos7安装NGINX+MYSQL+PHP-FPM环境

    前言 LIUNX服务器部署,百度找的资料有些都是老的.查了一些资料顺便整合了一下,阿里云服务器(ECS)可以选择多种操作系统,打算用它运行Drupal或者WordPress,你最好选择Liunx系统, ...

  9. nginx mysql 网页显示_Win10+Python+Django+Nginx+MySQL开发教程及实例(3)——Nginx运行html网页...

    Win10+Python+Django+Nginx+MySQL开发教程及实例 PaulTsao 本教程共有三篇内容: 第四篇*:创建个人博客 第五篇*:个人博客网站上云部署并运行 第三篇:Win10+ ...

最新文章

  1. 原生app跳html页面传值,HTML页面跳转及参数传递问题
  2. 洛谷P2068 统计和题解
  3. java输出image_java如何生成imagecode
  4. 云栖回顾|首届阿里云云原生生态合作伙伴大会:与伙伴能力融合,加速企业数字创新
  5. mongodb安装_Windows系统安装运行Mongodb服务
  6. ubuntu配置spyder和jupyter notebook的工作目录
  7. 如果在山上挖一个池塘,不放鱼,里面会慢慢有鱼吗?
  8. Java定义一维数组从键盘赋值
  9. zemax设置 像方远心_[入门] [ZEMAX] [成像] 手把手教程:一个双高斯类镜头
  10. 2017-2018-1 20155328 《信息安全系统设计基础》第13周学习总结
  11. awr报告与statspack报告
  12. 【机器学习】十三、一文看懂Bagging和随机森林算法原理
  13. sql中的函数取余数
  14. ffmpeg转mov为mp4
  15. 软文标题怎么写吸引人?记住这几个套路
  16. jav常用类-时间处理相关类
  17. 姓名:孔盼 学号:2103101015 桃花岛——盼<>盼
  18. python实现自动答题详解含代码
  19. 新版烽火HG680-LC、CM211-1zg、M304A ZN、MGV2000爱家tv通刷固件(免拆机)
  20. Python_Task05:字典、集合和序列

热门文章

  1. Gartner预测:SD-WAN将取代路由
  2. 利用 Flash 远程检测客户端安装的杀软
  3. [Qt-creator]实用技巧----基于ubuntu
  4. 实现数据库的增删改查
  5. C# - DynamicObject with Dynamic
  6. IIS 支持 php
  7. Xposed是如何为所欲为的?
  8. TensorFlow模型实现:UNet模型
  9. 图像中某点绕点旋转后的坐标,图像旋转坐标位置
  10. Spring框架—基础介绍