CentOS7安装配置Apache、PHP和MySQL

   2023-02-10 学习力0
核心提示:一、安装Apachesudo yum install httpd安装成功后,Apache操作命令:systemctl start httpd //启动apachesystemctl stop httpd //停止apachesystemctl restart httpd //重启apachesystemctl enable httpd //设置apache开机启动(1)为了让其他机器访问我们的服

一、安装Apache

sudo yum install httpd

安装成功后,Apache操作命令:

systemctl start httpd //启动apache
systemctl stop httpd //停止apache
systemctl restart httpd //重启apache
systemctl enable httpd //设置apache开机启动

(1)为了让其他机器访问我们的服务器,可能需要进行一些设置:

在防火墙中开放80端口

现在需要将http服务器加入防火墙以允许外部访问:

sudo firewall-cmd --add-service=http --permanent
sudo firewall-cmd --add-port=80/tcp --permanent

--permanent参数表示这是一条永久防火墙规则。

而对于自定义的端口(如81),也需要添加防火墙规则:

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

重启Firewall使规则生效:

systemctl restart firewall

(2)了解下httpd服务器的配置文件文件,大致要知道这些配置文件是干嘛的以及存放在什么位置

作用 存放路径
服务目录 /etc/httpd
主配置文件 /etc/httpd/conf/httpd.conf
网站数据目录 /var/www/html
访问日志 /var/log/httpd/access_log
错误日志 /var/log/httpd/error_log

 

主要来看看httpd服务程序的主配置文件(/etc/httpd/conf/httpd.conf),主配置文件最为常见的参数包括:

参数名 作用
ServerRoot 服务目录
ServerAdmin 管理员邮箱
User 运行服务的用户
Group 运行服务的用户组
ServerName 网站服务器的域名
DocumentRoot 网站数据目录
Lister 监听的ip地址与端口号
DirectoryLidex 默认的索引页页面
ErrorLog 错误日志文件
CustomLog 访问日志文件
Timeout 网页超时时间,默认为300秒
Include 需要加载的其他文件

 

从上面表格中可以得知DocumentRoot正是用于定义网站数据保存路径的参数,其参数的默认值是把网站数据存放到了/var/www/html目录中的,而网站首页的名称应该叫做index.html,因此可以手动的向这个目录中写入一个文件来替换掉httpd服务程序的默认网页,这种操作是立即生效的。

二、PHP安装

PHP一般centos都安装了,即使没有安装也很简单,一句命令搞定:

sudo yum install php php-mysql php-gd libjpeg* php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-bcmath php-mhash

安装完成后重启Apache服务器:

sudo systemctl restart httpd.service

 在 /var/www/html/ 目录下新建test.php,写入如下代码并保存:

<?php
phpinfo();
?>

然后在浏览器中打开http://localhost/test.php,如果显示如下页面,说明php安装成功

CentOS7安装配置Apache、PHP和MySQL

三、安装mysql

1.下载并安装MySLQ官方的yum respository:

wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
sudo yum -y install mysql57-community-release-el7-10.noarch.rpm

安装mysql服务器:

sudo yum -y install mysql-community-server

2.配置mysql数据库:

(1)首先运行mysql:

sudo systemctl start mysqld

查看mysq的运行状态:

sudo systemctl status mysqld

此时,mysql已经正常运行了,不过想要进入mysql得先找出root用户的初始密码,此密码是安装时自动随即设置的,可以通过如下命令在日志文件中找出密码,然后通过该密码进入mysql。

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

(2)使用初始密码进入数据库:

mysql -u root-p

必须修改初始密码后才能操作数据库,使用如下命令修改数据库密码:

ALTER USER 'root'@'localhost' IDENTIFIED BY 'New_Password';

这里有一个问题,如果你的新密码过于简单,修改会失败。mysql从5.6版本后引入了validate_password插件用于检测密码强度,密码如果不符合预定义的策略会返回错误。

mysql完整的初始密码规则可以通过如下命令查看(前提是:你已经修改了密码,这很尴尬):

mysql> SHOW VARIABLES LIKE 'validate_password%';
+--------------------------------------+-------+
| Variable_name                        | Value |
+--------------------------------------+-------+
| validate_password_check_user_name    | OFF   |
| validate_password_dictionary_file    |       |
| validate_password_length             | 4     |
| validate_password_mixed_case_count   | 1     |
| validate_password_number_count       | 1     |
| validate_password_policy             | LOW   |
| validate_password_special_char_count | 1     |
+--------------------------------------+-------+
7 rows in set (0.00 sec)

不过,我们可以通过如下命令修改规则,修改后密码可以设置的很简单:

mysql> set global validate_password_policy=0;
mysql> set global validate_password_length=1;

到此,数据库的设置就完成了。

最后,删除前面安装的yum respository:

sudo yum -y remove mysql57-community-release-el7-10.noarch

 至此,我们就搭建好了 PHP+Apache+MySQL 环境。

 
反对 0举报 0 评论 0
 

免责声明:本文仅代表作者个人观点,与乐学笔记(本网)无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
    本网站有部分内容均转载自其它媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责,若因作品内容、知识产权、版权和其他问题,请及时提供相关证明等材料并与我们留言联系,本网站将在规定时间内给予删除等相关处理.

  • Apache80端口被占用解决办法
    Apache80端口被占用解决办法
    1. win+R,输入 cmd,打开命令行窗口2. 命令行输入netstat -ano3. 找到80端口及对应进程 4. 在任务管理器中的进程处查看与上述80端口对应的PID相同的进程,并关闭。如果没有PID,选择“查看”--"选择列"--勾选“PID”。4. 关闭进程。如果进程为上述系统服务,
    03-08
  • Hadoop中mapreduce运行WordCount程序报错Error:
    这个问题是因为map的方法参数与继承mapper定义的参数类型不一致导致的,应该将Mapper的key参数类型设置成Object,就可以解决这个问题 
    03-08
  • 使用 Apache Hudi 实现 SCD-2(渐变维度)
    使用 Apache Hudi 实现 SCD-2(渐变维度)
    数据是当今分析世界的宝贵资产。 在向最终用户提供数据时,跟踪数据在一段时间内的变化非常重要。 渐变维度 (SCD) 是随时间推移存储和管理当前和历史数据的维度。 在 SCD 的类型中,我们将特别关注类型 2(SCD 2),它保留了值的完整历史。 每条记录都包含有
    03-08
  • 一个用 Python 分析 Apache 日志的故事
    一个用 Python 分析 Apache 日志的故事
    介绍不久前,公司里有人告诉我“我想知道 Apache 的访问日志是否可以用来做一些事情”。数据分析,Apache,发文章,我是初学者,写的不好请见谅。访问日志分析导入模块我正在使用以下模块。# データの処理import pandas as pdimport numpy as np# グラフ表示i
    03-08
  • [转]用apache反向代理解决单外网ip对应内网多个
    用apache反向代理解决单外网ip对应内网多个web主机的问题  转载一个有独立外网IP,需内网服务器对外发布的例子,是应用apache虚拟主机的。来源地址:http://www.itshantou.com/Servers/web/06/10/44219.html    几年前开始在学校的服务器上建网站,那时
    02-10
  • Apache service named reported the following
    apache启动失败报错:The Apache service named reported the following error: AH00451: no listening sockets available, shutting down . The Apache service named reported the following error: (OS 10055)由于系统缓冲区空间不足或队列已满,不能执行
    02-10
  • struts布局管理---SiteMesh一个优于Apache Tile
    1. SiteMesh的基本原理       一个请求到服务器后,如果该请求需要sitemesh装饰,服务器先解释被请求的资源,然后根据配置文件 获得用于该请求的装饰器,最后用装饰器装饰被请求资源,将结果一同返回给客户端浏览器。 2. 如何使用SiteMesh    这里以st
    02-10
  • linux 安装 apache2.2.31
     Linux下安装和配置Apache 概要:本文介绍在CentOS5.4 Linux中安装和配置Apache2.2.14,并且实现Apache和Tomcat6的整合。文章分为三部分,分别是删除系统自带的Apache、安装Apache2.2.14和配置Apache2.2.14。 文章中介绍的知识也可以在其它版本的Linux中
    02-10
  • Apache CXF使用Jetty发布WebService
    Apache CXF使用Jetty发布WebService
    一、概述Apache CXF提供了用于方便地构建和开发WebService的可靠基础架构。它允许创建高性能和可扩展的服务,可以部署在Tomcat和基于Spring的轻量级容器中,也可以部署在更高级的服务器上,例如Jboss、WebSphere或WebLogic。 CXF提供了以下功能:WebService
    02-10
  • apache下ab.exe使用方法。。 apache ab工具
    自己在cmd中写了半天的路径也没有写对。。最后网上的一个哥们告诉我说没有共同语言了。。。毛线啊 差距确实很大!大能猫死panda早晚干掉你,叫你丫整天嘲讽我!比如我的ab.exe在D盘的wamp文件夹下apache文件夹下bin文件夹下。那么在cmd中可以这么写:"D:\wamp
    02-10
点击排行