7007 发表于 2018-12-11 12:07:31

Centos6.9下 yum 安装 nginx1.10 + mysql5.6 + php5.6

  一、准备工作
1、检查selinux是否为关闭状态,不为disable需要改为disable。
SELINUX=disabled
  不为disabled 的话,则修改为    SELINUX=disabled。
2、检查环境下有没有安装过低版本的
rpm -qa|grep mysql
mysql-libs-5.1.73-8.el6_8.x86_64
  rpm -qa|grep nginx
  rpm -qa|grep php
  从上可获知Linux下yum过一个mysql-libs-5.1.73-8.el6_8.x86_64,等下安装MySQL5.6版本的时候,先做卸载就可以。
  3、可以查看有没有mysql nginx php等相关的命令 ,有可能是源码安装过的,若有也需要卸载掉。
  whereis nginx
  whereis php
whereis mysql
  4、防火墙上开启80端口的对外开放, 3306端口看你对外需求再开放了(安全考虑需要对外开放的话,也只能授权对应的信任IP访问才行)
  刚刚新安装的系统默认的是关闭iptables的
  vim /etc/sysconfig/iptables
加入以下内容
*filter
:INPUT ACCEPT
:FORWARD ACCEPT
:OUTPUT ACCEPT
:RH-Firewall-1-INPUT -
-A INPUT -j RH-Firewall-1-INPUT
-A FORWARD -j RH-Firewall-1-INPUT
-A RH-Firewall-1-INPUT -i lo -j ACCEPT
-A RH-Firewall-1-INPUT -p icmp -m icmp --icmp-type any -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
-A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited
COMMIT
  保存后重启iptables
  service iptables restart
  二、安装nginx
centos 6.9默认的是nginx1.10版本,想安装nginx更高的版本可以下载nginx官网yum源进行安装,这里省略自己查看其它版本安装的参考吧。
1、删除系统自带的软件包
yum remove httpd php
2、安装nginx
yum install -y nginx
  3、设置nginx开机启动
chkconfig nginx on
4、启动nginx
service nginx start
  三、安装MySQL5.6
  1、检查MySQL是否有相关包
  whereis mysql
mysql: /usr/lib64/mysql /usr/share/mysql
  rpm -qa|grep mysql
mysql-libs-5.1.73-8.el6_8.x86_64
  卸载mysql-libs-5.1.73-8.el6_8.x86_64
yum remove mysql-libs
  2、清空dbcache
yum clean dbcache
  3、下载MySQL rpm安装包
  wget http://repo.mysql.com/mysql-community-release-el6-5.noarch.rpm
  4、 安装MySQL安装源
使用rpm -ivh mysql-community-release-el6-5.noarch.rpm安装下载的rpm文件~
rpm -ivh mysql-community-release-el6-5.noarch.rpm
  5、安装mysql-community-server
使用yum install mysql-community-server安装MySQL server。
yum install mysql-community-server
  6、启动MySQL服务
service mysqld start
  7、修改mysql密码
修改密码~
  使用update user set password=PASSWORD("YOUR_PASSWORD") where user='root';修改root账号密码~
  mysql> use mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
  Database changed
mysql> update user set password=PASSWORD("YOUR_PASSWORD") where user='root';
Query OK, 4 rows affected (0.00 sec)
Rows matched: 4Changed: 4Warnings: 0
  mysql>flush privileges;
Query OK, 0 rows affected (0.00 sec)
  mysql> quit
  密码验证
重新登录mysql服务
  至此,MySQL安装完毕~
  四、安装PHP5.6
  检查当前安装的PHP包
yum list installed | grep php
  如果有安装的PHP包,先删除他们, 如:
yum remove php.x86_64 php-cli.x86_64 php-common.x86_64
  配置安装包源:,根据具体Linux系统版本安装源。

Centos 5.X
  rpm -Uvh http://mirror.webtatic.com/yum/el5/latest.rpm

CentOs 6.x
  rpm -Uvh http://mirror.webtatic.com/yum/el6/latest.rpm

CentOs 7.X
  rpm -Uvh https://mirror.webtatic.com/yum/el7/epel-release.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
  如果想删除上面安装的包,重新安装
rpm -qa | grep nginx
rpm -e[上面搜索到的包即可]
  执行安装
yum -y install php56w.x86_64
yum -y --enablerepo=webtatic install php56w-devel
yum -y install php56w-gd.x86_64 php56w-ldap.x86_64 php56w-mbstring.x86_64 php56w-mcrypt.x86_64 php56w-mysql.x86_64 php56w-pdo.x86_64 php56w-opcache.x86_64
  安装PHP FPM
yum -y install php56w-fpm
  #设置php-fpm开机启动
chkconfig php-fpm on
  #启动php-fpm
/etc/init.d/php-fpm start
  五、配置


[*]配置nginx
vi /etc/nginx/conf.d/default.conf   
添加如下内容 :
  server{
listen      80;
servername ;  //这里填写你的域名
index index.php index.html index.htm;
root/var/www/html;

location ~ .*\.(php|php5)?$
{
fastcgi_pass127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi.conf;  
  
方法二:
      //fastcgi_paramSCRIPT_FILENAME   $document_root$fastcgi_script_name;
       //include fastcgi_params;

}
location / {
try_files $uri $uri/ /index.php?$query_string;
}
  }
说明: /var/www/html 为web根目录, 【location /】 ... 为url的rewrite,隐藏 index.php


[*]配置php-fpm
vi /etc/php-fpm.d/www.conf
将用户和用户组设置为nginx, 如:
  #修改用户为nginx
user = nginx
#修改组为nginx
group = nginx
开始测试
cd /var/www
vi index.php
添加以下代码
  
:wq! 保存退出
  #设置权限
chown nginx.nginx /var/www -R
#重启nginx
service nginx restart   //(若fastcgi.conf没找到:,请参考上面配置的方法二)
#重启php-fpm
service php-fpm restart
在客户端浏览器输入服务器IP地址(如: 127.0.0.1),可以看到相关的配置信息!
  如果是虚拟机,则使用ifconfig获取虚拟机ip,在浏览器输入:虚拟机IP/index.php,可以看到相关的配置信息!
说明配置成功!
  3、更改MySQL编码为utf8
vim /etc/my.cnf 添加一下内容
  character_set_server = utf8
  4、设置开机启动项
chkconfignginx on
chkconfigmysqld on
chkconfigphp-fpm on
  六、问题:
问题1 /etc/init.d/nginx restart
nginx: socket() [::]:80 failed (97: Address family not supported by protocol)
nginx: configuration file /etc/nginx/nginx.conf test failed
  解决方法: 编辑 /etc/nginx/conf.d/default.conf
  注释掉 listen       [::]:80 default_server;
  问题2:网站注册页面报异常:field ‘id' doesn't have a default value
  解决方法: 打开my.ini,查找 sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION" 修改为 sql-mode="NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION" 然后重启MYSQL



页: [1]
查看完整版本: Centos6.9下 yum 安装 nginx1.10 + mysql5.6 + php5.6