centos配置apche、FTP、防火墙配置、php安装、mysql安装(天翼云完整版)

将天翼云centos部署lamp的一系列所有动作的整理了一遍,避免再入坑

一、apache

1、apache安装及配置

yum install httpd -y

2、配置开机启动

systemctl start httpd

systemctl enable httpd 

3、查看启动状态

systemctl status httpd

二、ftp 安装

centos如果开启了ssh2,不需要特殊安装,直接可访问

三、外网允许访问(适用apache2.4版本)

/etc/httpd/conf/httpd.conf

<Directory />
  AllowOverride none
  Require all granted
</Directory>
<Directory "C:/xampp/htdocs">
  Options FollowSymLinks
  AllowOverride All
  Allow from all
  Require all granted
  <Files "index.php">
    SetHandler application/x-httpd-php
  </Files>
  <Files "zentao.php">
    SetHandler application/x-httpd-php
  </Files>
  <Files "zentaopro.php">
    SetHandler application/x-httpd-php
  </Files>
</Directory>

同时修改访问端口,listen

重启服务

四、在防火墙上设置

查看防火墙状态

systemctl status firewalld.service 

开启和停止依然是start和stop

增加可访问端口

开启端口

firewall-cmd --zone=public --add-port=80/tcp --permanent

查看端口是否开启

 firewall-cmd --query-port=80/tcp

重启防火墙

firewall-cmd --reload

查询哪些端口开启

 firewall-cmd --list-port

添加自启动:

 systemctl enable firewalld.service 

五,在天翼云安全组内增加端口

入方向和出方向均添加次端口策略

六、测试apache是否启动

本地测试 curl http://127.0.0.1:8081

远端测试访问页面即可

七、mysql安装

(一)安装前先卸载rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_64

#查看版本

rpm -qa|grep mariadb

#删除

rpm -e --nodeps mariadb-libs-5.5.64-1.el7.x86_64

#再次查看

rpm -qa|grep mariadb

(二)安装及配置mysql

1、安装wget

1)查看是否安装: rpm -qa|grep "wget" 如果已安装会显示wget相关信息,如果不显示信息就表示没安装,wget命令自然不能使用。

2)安装wget

yum -y install wget 当看到Complete!表示成功...

3)再次查看是否安装(出现以下版本信息表示安装成功)

4)输入wget -h进行测试

2、安装mysql

https://www.cnblogs.com/shuo1208/p/11237713.html

1)下载并安装MySQL官方的 Yum Repository

[root@localhost ~]# wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm

  使用上面的命令就直接下载了安装用的Yum Repository,大概25KB的样子,然后就可以直接yum安装了。

[root@localhost ~]# yum -y install mysql57-community-release-el7-10.noarch.rpm

  之后就开始安装MySQL服务器。

[root@localhost ~]# yum -y install mysql-community-server

 

至此MySQL就安装完成了,然后是对MySQL的一些设置。

查看安装之后的状态 :systemctl status mysqld

添加服务器启动项

systemctil enable mysqld

3、配置MySQL

1)查看初始root密码:

grep "password" /var/log/mysqld.log

由于初始化密码过于复杂,我们可以考虑跨过验证直接登录后修改密码,需要修改my.cnf文件配置,建议修改密码后将验证打开,步骤如下:

###打开vim /etc/my.cnf

在[mysqld]标签下添加这三行

skip-grant-tables
character_set_server=utf8
init_connect='SET NAMES utf8'

###注释:

skip-grant-tables:跳过登录验证

character_set_server=utf8:设置默认字符集UTF-8

init_connect='SET NAMES utf8':设置默认字符集UTF-8

切记一定要重启mysqld服务

systemctl stop mysqld

systemctl start mysqld

2)修改root密码

进入数据库,由于已经修改了配置文件,所以直接回车就可,不需要输入密码

mysql -uroot -p

选择数据库:

use mysql;

修改user表中密码值:

update user set authentication_string=password('password') where user='root';

flush privileges;#即可生效

然后将my.cnf文件的skip-grant-tables注释掉即可。

如果再次登录mysql,运行语句时出现:

只需再次执行一次

alter user "root"@"localhost" identified by "密码";

即可

https://www.cnblogs.com/lzhdonald/p/12511998.html

删除:https://www.cnblogs.com/hqjy/p/7248680.html

安装:https://www.cnblogs.com/shuo1208/p/11237713.html

4、开启远端连接:

1)新建用户:

进入到mysql , mysql -uroot -p,输入密码

先执行 ALTER USER USER() IDENTIFIED BY 'root密码';,

否则会报错You must reset your password using ALTER USER statement before executing this statement.

创建用户 CREATE USER 'test'@'localhost' IDENTIFIED BY '密码';

2)授权:grant all privileges on *.* to 'test'@'%' identified by '密码' with grant option;

by后面的就是远程登录密码,远程登录密码可以和用户密码不一样,建议使用用户密码。

3)在firewalld上添加3306端口

 firewall-cmd --query-port=3306/tcp

firewall-cmd --reload

4)测试即可

5、处理SQLSTATE[42000]: Syntax error or access violation: 1055 Expression #1

出现这种问题 直接修改mysql的配置文件就可以了 (/etc/my.cnf)

在mysqld下面添加

sql_mode=""或者 sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

保存重启mysql 

(三)安装php

方法一:

1、安装epel-release

 yum -y install epel-release

2、安装php7.0

首先我们先来获取PHP7.0的yum源,执行下面的指令:

rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

查看到扩展名称后可以选择自己的要求安装几个,下面我推荐安装这几个通用的,直接上指令吧。想要什么扩展后期也可以安装上去不用担心,指令也是一样的,yum install {写扩展名}。

安装指令:yum install php70w php70w-fpm php70w-cli php70w-common php70w-devel php70w-gd php70w-pdo php70w-mysql php70w-mbstring php70w-bcmath

安装的时候有两次要输入Y回车,才会继续安装的,乖乖输入就好了。

安装成功了,我来查看以下是否安装成功了,输入下面的指令看出版本试试吧!

指令:php -v

能看到下图的内容就证明安装成功了!

方法二

 

安装PHP7

  rpm -ivh http://mirrors.ustc.edu.cn/epel/epel-release-latest-7.noarch.rpm  (2018年9月12日 亲测有效)  安装 epel-release

  rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

  yum install php70w

  php -v  测试是否安装成功

查看是否成功

  <?php phpinfo(); ?>  写入文件  index.php

  将文件放至  /var/www/html

  然后访问  ip:80/index.php 查看即可

结果测试:

打开php.ini短标签short_open_tag,去掉前面分号

新建index.php ,写上<?php phpinfo(); ?>

重启httpd

访问域名:8081/index.php,可打印出来

方法三、安装PDO可用

一、安装准备

使用以下命令将yum仓库包升级更换成PHP7的rpm包

rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

二、开始安装

1.先使用yum命令安装基本PHP组件,以后要用到啥再安装啥

yum -y install php70w.x86_64 php70w-cli.x86_64 php70w-common.x86_64 php70w-gd.x86_64 php70w-ldap.x86_64 php70w-mbstring.x86_64 php70w-mcrypt.x86_64 php70w-mysql.x86_64 php70w-pdo.x86_64

2.再安装PHP-fpm(进程管理器,提供PHP进程管理方式,可以有效控制内存和进程、平滑重载PHP配置)

yum -y install php70w-fpm php70w-opcache

3.安装完之后启动php-fpm

systemctl start php-fpm

4.查看版本以检测是否安装成功

php -v

三、检测PHP是否能与Nginx互通(为测试,mark)

1.在Nginx的默认HTML文件夹里(/usr/local/webserver/nginx/html/)新建一个index.php,内容如下:

<?php
    phpinfo();
?>

 

2.修改Nginx的配置文件(可使用find /|grep nginx.conf搜索配置文件位置)Nginx.conf,修改新增如下:

复制代码

        # proxy the PHP scripts to Apache listening on 127.0.0.1:80
        #
        #location ~ \.php$ {
        #    proxy_pass   http://127.0.0.1;
        #}

        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
        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;
        }

复制代码

要将原属性修改成蓝色字体部分,不然访问index.php会出现以下情况(php-fpm找不到原SCRIPT_FILENAME里执行的php文件)

3.重启Nginx

/usr/local/webserver/nginx/sbin/nginx -s reload

4.访问域名(IP)/index.php出现以下内容即为配置成功

四、检测PHP是否能与mysql互通

将上一份index.PHP内容修改如下

复制代码

<?php

// 创建连接
$test = mysqli_connect('localhost','root','qq1234');//数据库服务器地址,账号名,密码

// 检测
if (!$test) echo "连接失败,请检查mysql服务以及账户密码";
echo "数据库连接成功!";
?>

复制代码

修改完之后直接访问index.php,无需重启Nginx

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值