【安装Nginx】
#先安装如下包
yum install gcc gcc-c++ kernel-devel
yum -y install pcre-devel openssl openssl-devel #解压nginx-1.12..tar.gz  然后进入目录
./configure --prefix=/usr/local/nginx --with-http_stub_status_module make && make install 【安装MySQL】
#先安装如下包:
yum -y install make gcc-c++ cmake bison-devel  ncurses-devel #解压mysql-5.6..tar.gz 然后进入目录
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DSYSCONFDIR=/etc -DWITH_MYISAM_STORAGE_ENGINE= -DWITH_INNOBASE_STORAGE_ENGINE= -DWITH_MEMORY_STORAGE_ENGINE= -DWITH_READLINE= -DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock -DMYSQL_TCP_PORT= -DENABLED_LOCAL_INFILE= -DWITH_PARTITION_STORAGE_ENGINE= -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci make && make install 【安装PHP】
#先安装如下包:
yum install -y gcc gcc-c++  make zlib zlib-devel pcre pcre-devel  libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers #解压php-7.1..tar.gz 然后进入目录
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php --enable-mbstring --enable-ftp --with-gd --with-jpeg-dir=/usr --with-png-dir=/usr --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-pear --enable-sockets --with-freetype-dir=/usr --enable-gd-native-ttf --with-zlib --with-libxml-dir=/usr --with-xmlrpc --enable-zip --enable-fpm --enable-xml --enable-sockets --with-gd --with-zlib --with-iconv --enable-zip --with-freetype-dir=/usr/lib/ --enable-soap --enable-pcntl --enable-cli --with-curl make && make install
说明:Nginx、MySQL、PHP7 的编译安装命令参考安装包内的command.txt,所有的操作需要在root用户下执行。
 
【编译安装Nginx之后】  
$ /usr/local/server/nginx/sbin/nginx              #启动Nginx
$ /usr/local/server/nginx/sbin/nginx -s stop #断开Nginx
$ /usr/local/server/nginx/sbin/nginx -s reload #重启Nginx
$ ps -ef | grep nginx 或者 ps -A | grep -i nginx #查看是否成功启动nginx
[配置Nginx支持PHP]
进入 /usr/local/nginx/conf,将nginx.conf 复制一份备用,然后修改 nginx.conf:
()index  index.html index.htm; 改为:
index index.html index.htm index.php; ()#location ~ \.php$ {
# root html;
# fastcgi_pass 127.0.0.1:;
# fastcgi_index index.php;
# fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
# include fastcgi_params;
#}
改为: location ~ \.php$ {
# root html;
fastcgi_pass 127.0.0.1:;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
 
[开启Nginx的目录文件列表功能]
http {
include mime.types;
default_type application/octet-stream;
#------ 开启Nginx的目录文件列表功能 -----#
autoindex on; #自动显示目录
autoindex_exact_size off; #人性化方式显示文件大小否则以byte显示
autoindex_localtime on; #按服务器时间显示,否则以gmt时间显示

...
}
[配置虚拟主机]
server {
listen ;
server_name centos.a.com;
root /usr/local/nginx/html/test;
charset utf-;
# access_log /logs/admin_access.log;
# error_log /logs/admin_error.log;
index index.php index.html;   location ~ \.php$ {
    fastcgi_pass 127.0.0.1:;
    fastcgi_index index.php;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include fastcgi_params;
  }
} 然后在 /etc/hosts 中添加: 127.0.0.1 centos.a.com
 
 
[配置nginx 支持ThinkPHP] ------未验证
在 nginx 下面用 ThinkPHP 做开发,每次输入类似 /test/tp/index.php/Index/index 的 URI ,提示没有找到该页
原来 nginx 原来不支持 pathinfo 模式,需要自己配置。在配置文件的 server 块中,加入以下内容:
location /qgzs_apiv2/app/ {
index index.php;
if (!-e $request_filename) {
rewrite ^/qgzs_apiv2/app/(.*)$/qgzs_apiv2/app/index.php/$ last;
break;
}
}
location ~ .+\.php($|/) {
set $script $uri;
set $path_info "/";
if ($uri ~ "^(.+\.php)(/.+)") {
set $script $;
set $path_info $;
} fastcgi_pass 127.0.0.1:;
fastcgi_index index.php?IF_REWRITE=;
include fastcgi_params;
fastcgi_param PATH_INFO $path_info;
fastcgi_param SCRIPT_FILENAME $document_root/$script;
fastcgi_param SCRIPT_NAME $script;
}
其中 /qgzs_apiv2/app/ 是项目的路径,保存配置之后,重启 nginx ,配置成功。
直接支持类似于 /Index.html 这样的伪静态模式。
 
 
 
【编译安装MySQL之后】
编译安装大约需要30分钟,之后作如下配置:
 
[设置权限]
使用下面的命令查看是否有mysql用户及用户组
$ cat /etc/passwd    #查看用户列表
$ cat /etc/group     #查看用户组列表
 
如果没有就创建
$ groupadd mysql
$ useradd -g mysql mysql
 
修改/usr/local/mysql权限
$ chown -R mysql:mysql /usr/local/mysql
 
[初始化配置]
进入安装路径, 执行初始化配置脚本,创建系统自带的数据库和表:
$ cd /usr/local/mysql
$ scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql
 
如果安装失败,若出现Can't locate Data/Dumper.pm in @INC (@INC contains: ... ,解决如下:
$ yum install 'perl(Data::Dumper)'
 
注:对/etc/my.cnf重命名为/etc/my.cnf.bak,然后拷贝服务脚本到init.d目录,并设置开机启动:
$ cp support-files/mysql.server /etc/init.d/mysql
$ chkconfig mysql on
$ service mysql start    #启动MySQL
 
[配置用户]
需要先设置PATH,要不不能直接调用mysql.修改/etc/profile文件,在文件末尾添加:
PATH=/usr/local/mysql/bin:$PATH
export PATH
 
关闭文件,运行下面的命令,让配置立即生效:
$ source /etc/profile
 
现在,在终端内直接输入mysql即可进入:
$ mysql -uroot
mysql> SET PASSWORD = PASSWORD('123456');
 
若要设置root用户可以远程访问,执行
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'172.16.%' IDENTIFIED BY '123456' WITH GRANT OPTION;
 
[配置防火墙]
防火墙的3306端口默认没有开启,若要远程访问,需要开启这个端口。打开/etc/sysconfig/iptables:
在“-A INPUT –m state --state NEW –m tcp –p –dport 22 –j ACCEPT”,下添加:
-A INPUT -m state --state NEW -m tcp -p -dport 3306 -j ACCEPT
然后保存,并关闭该文件,在终端内运行下面的命令,刷新防火墙配置:
$ service iptables restart
 
 OK,一切配置完毕,然后可以访问MySQL了!
 
 
 
【编译安装PHP7之后】
编译安装大约需要20分钟,之后在之前编译的源码包中,找到 php.ini-production:
$ cp php.ini-production /usr/local/php/php.ini
[设置让PHP错误信息打印在页面上] 
$ vim /usr/local/php/php.ini 
display_errors = On
 
[复制启动脚本]
$ cp ./sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
$ chmod +x /etc/init.d/php-fpm
 
[修改php-fpm配置文件]
$ cd /usr/local/php/etc
$ cp php-fpm.conf.default php-fpm.conf
然后,vim php-fpm.conf 编辑配置文件:
① 去掉 pid = run/php-fpm.pid 前面的分号
② 修改user和group的用户为当前用户
③ pm.max_children =
pm.start_servers =
pm.min_spare_servers =
pm.max_spare_servers =
然后保存退出。
 
[启动php-fpm]
$ /etc/init.d/php-fpm start  #php-fpm启动命令
$ /etc/init.d/php-fpm stop        #php-fpm退出命令
$ ps -ef | grep php 或者 ps -A | grep -i php  #查看是否已经成功启动PHP
 
 
 
 
 
 
 
 
 
 
 
 

02-Nginx+MySQL+PHP7的更多相关文章

  1. windows下配置Nginx+Mysql+Php7

    环境:Windows10 mysql-5.6.24-win32解压缩版    nginx-1.8.0    php7 1.Mysql安装 下载压缩文件之后解压缩至相应目录(我的目录是G:\wnmp\m ...

  2. 阿里云上的Centos 7.6的一次Nginx+Mysql+PHP7.3 部署

    阿里云申请了一台服务器 Centos 7.6,每次安装都要上网找一大堆教程,因为不熟悉,因为总是忘记. 所以,有时间的时候,还是记录下自己的学习过程,有助于下次的问题解决. 我先总结下: 1)安装VS ...

  3. CentOS 7 yum nginx MySQL PHP7 简易环境搭建(精)

    用centos自带的yum源来安装nginx,mysql和php,超级方便,省去编译的麻烦,省去自己配置的麻烦,还能节省非常多的时间. 我们先把yum源换成国内的阿里云镜像源(当然不换也可以),先备份 ...

  4. Vmware搭建LNMP环境(Centos7+Nginx+Mysql+PHP7.1.8)

    参考:1.Linux学习之CentOS(一)----在VMware虚拟机中安装CentOS 7(图文教程) 2.Centos7搭建LNMP环境 3.MySQL5.7修改默认root密码 4.CentO ...

  5. 教你编译PHP7 (nginx+mysql+php7)

    # 安装编译工具: yum install gcc automake autoconf libtool gcc-c++ # 安装基础库 yum install gd zlib zlib-devel o ...

  6. ubuntu16.04安装LNMP(ubuntu+Nginx+mysql+PHP7.0)

    系统环境: Ubuntu 16.04.2 LTS nginx version: nginx/1.10.3 (Ubuntu) PHP 7.0.22-0ubuntu0.16.04.1 mysql  Ver ...

  7. Ubunt16.04下安装PHP7+Nginx+MySQL

    本文通过Ubuntu PPA来安装PHP7.   1.添加PPA $ sudo apt-get install python-software-properties software-properti ...

  8. Mac下使用brew搭建PHP7+nginx+mysql开发环境

    http://blog.csdn.net/mysteryhaohao/article/details/52230634 HomeBrew brew的安装,直接上官网:http://brew.sh/ 一 ...

  9. 搭建windows环境下(nginx+mysql+php)开发环境

    搭建windows环境下(nginx+mysql+php)开发环境   1. 所需准备应用程序包        1.1 nginx 程序包nginx-1.0.4.zip或其他版本(下载地址: http ...

  10. Spring Boot 2.0(五):Docker Compose + Spring Boot + Nginx + Mysql 实践

    我知道大家这段时间看了我写关于 docker 相关的几篇文章,不疼不痒的,仍然没有感受 docker 的便利,是的,我也是这样认为的,I know your felling . 前期了解概念什么的确实 ...

随机推荐

  1. Html Mailto标签详细使用方法

    http://www.360doc.com/content/09/0805/14/16915_4684377.shtml Html Mailto标签详细使用方法 Html中mailto标签是一个非常实 ...

  2. jQuery 函数位于一个 document ready 函数中

    在我们的实例中的所有 jQuery 函数位于一个 document ready 函数中: $(document).ready(function(){ --- jQuery functions go h ...

  3. myeclipse编码

    window --->perferences

  4. C# winform页面可视化设计打开失败,提示未能加载程序集或他的一个依赖项,dll错误

    这种情况发生在最初项目是x86属性,改成x64后,一些原来dll,页面没有及时更新,导致页面找不到dll, 最简单的解决方式,把项目属性改成AnyCpu,重新编译下,就可以打开可视化设计窗口了.

  5. Python---socket库

    为方便以后查询和学习,特从常用库函数和示例来总结socket库 1. 术语 family:AF_INET socktype:SOCK_STREAM或SOCK_DGRAM protocol:IPPROT ...

  6. OpenCv结构和内容

    OpenCv的结构和内容 OpenCv源码组成结构其中包括cv, cvauex, cxcore, highgui, ml这5个模块 CV:图像处理和视觉算法 MLL:统计分类器 HighGui:GUI ...

  7. MoonLight可视化订单需求区域分析系统前端

    MoonLight可视化订单需求区域分析系统实现功能: 在现实生活中,计算机和互联网迅速发展,人们越来越趋向于网络,于是我们就有了各种各样的系统,来帮助我们更好地生活.比如对于打车来说,我们也可以通过 ...

  8. 定时任务schedule(spring boot )

    1. 定时任务实现方式:SpringBoot自带的Scheduled,可以将它看成一个轻量级的Quartz,而且使用起来比Quartz简单许多,本文主要介绍. 执行方式:单线程(串行)多线程(并行) ...

  9. 《struts2》:指定多个配置文件和默认Action

    转载:http://m.blog.csdn.net/article/details?id=51212968

  10. iometer测试工具

    简介 Iometer 为计算机I/O子系统所作的工作就如同测力计为引擎所作的工作一样:它测定在可控制的负荷下系统的性能.Iometer 以前被称为"伽利略". Iometer 既是 ...