实体机下Centos7操作系统的安装,PHP,FTP,mariadb,Apache的安装设置,搭建网站完美实现

一、准备Centos7的镜像

根据需要选择你要安装的镜像,下载地址:http://mirrors.aliyun.com/centos/7/isos/x86_64/

各个版本的ISO镜像文件说明:

CentOS-7-x86_64-DVD-1708.iso               标准安装版(推荐)

CentOS-7-x86_64-Everything-1708.iso        完整版,集成所有软件(以用来补充系统的软件或者填充本地镜像)

CentOS-7-x86_64-LiveGNOME-1708.iso         GNOME桌面版

CentOS-7-x86_64-LiveKDE-1708.iso           KDE桌面版

CentOS-7-x86_64-Minimal-1708.iso           精简版,自带的软件最少

CentOS-7-x86_64-NetInstall-1708.iso        网络安装版(从网络安装或者救援系统)

我这里下载的是CentOS-7-x86_64-DVD-1908.iso   标准安装版,里面有很多集成的软件可供我们这种初学者安装,因为后期再自行安装软件真是各种报错各种蛋疼。

搭建服务器建议安装Minimal版本

二、下载软碟通,刻录

打开下载的镜像,点击工具-写入硬盘

三、插入电脑

开机,进入BIOS。设置从U盘启动。

四、开始安装

出现CentOS7启动菜单界面后按Tab后,会出现下面的文字:(PS:如果开机没有出现TAB提示的话,需要BIOS设置启动方式为常规启动,不能使用UEFI模式启动

将命令修改为

将命令修改为vmlinuz initrd=initrd.img dd linux quiet 然后回车程序开始查找磁盘,将本机所有磁盘列出。自动加载当前磁盘信息,可通过磁盘格式TYPE,或者磁盘名称LABEL,来确定U盘信息,记住U盘前面的DEVICE名称比如我的是sdb4。卷标是CentOS\x207\x20x8.(这里需要说明的一点,没有分区的磁盘是查找不出来的,这里加载只能加载分区信息。所以新硬盘请分区。)

记录好你的磁盘信息以后,重启电脑再按一次TAB键(设备名称根据查找名称结果进行更改)

将命令修改为vmlinuz initrd=initrd.img inst.stage2=hd:/dev/sdb4 quiet

然后回车,稍作等待,程序自动进入安装界面,(如果上面U盘地址错误的话会报warning:/dev/root does not exist错误。如果U盘地址信息输入正确,还是报此错误请参考https://blog.csdn.net/qq_25868251/article/details/83900307。最终还是解决不了的话,U盘格式化重写程序(同时去掉除了U盘和要写入系统的硬盘,以外的其他硬盘重新安装即可解决)

操作下面之前可以看看这个进行参考CentOS7 系统目录详解 https://blog.csdn.net/longxu0872/article/details/71168340
正常安装会进入设置页面,可根据自己的情况进行选择

说明:

/boot ,引导分区,XFS格式(centos7默认是此格式,6是ext4),一般100M;

/swap, 一般设置为内存的2~5倍,内存不够用时,会使用swap;

/,根分区,即root目录,一般设置为50~100G,根分区下会有/var,/usr,都是用户程序的安装目录,如果数据量小就少分点,多就多分一点;

/home,不用填写大小,系统会自动计算把剩余的空间都分配给home

搭建服务器建议安装Minimal版本,安装的同时可以设置root密码,创建新的用户指定目录为/home/lianxin  准备把搭建的网站放这个文件夹下的wwwroot,同时准备增加一块硬盘挂载到wwwroot。(挂载硬盘的含义:"在DOS/Windows中,C盘和D盘是并列的最顶级目录,但Linux中没有C盘D盘E盘的概念,整个文件系统就只有一个顶级的根目录(/),所有的物理磁盘都是根目录(/)下的一个子目录而已。所以,如果你要给现在的系统加快硬盘或添加分区,就先创建一个目录,然后用MOUNT和相应的格式参数把硬盘或分区挂载到你创建的那个目录中去,成功后,访问那个目录既是访问你加上的硬盘或分区。

大约等待了30分左右。。。 才安装完成。重启电脑进入系统

—— 安装完成首先配置网络

root登录contos 输入dhclient 获取一个自动的IP地址

然后再局域网电脑上登录(当然也可以继续在conts实体机上操作)

附上网络配置教程   https://www.jianshu.com/p/eab30fb7de15

—— 我们首先安装ftp 参考https://blog.csdn.net/ZZL95415/article/details/79187554

安装ftp yum -y install vsftpd 服务端
yum install ftp 客户端
启动ftp systemctl start vsftpd
开机自启systemctl enable vsftpd

firewall-config ##设置火墙,永久开启ftp服务,点击Options,选择Reload Firewalld

内核火墙三种状态:enforcing ##强制;disabled ##关闭; permissive##警告
vim /etc/sysconfig/selinux ##内核火墙配置文件 enforcing 改为 disabled
安装vim命令 yum -y install vim 如果提示vim命令没找到的话
reboot ###重启,重新读取配置文件
getenforce ##查看状态,显示disabled,配置完成

新建共享目录 FTP的目录 一般为存放网站的目录
usermod -d /home/lianxin/wwwroot lianxin 更改用户的主目录为/home/lianxin/wwwroot
chmod -R 775 /home/lianxin/wwwroot

FTP连接方式:lftp IP
协议接口:21/tcp
服务的配置文件目录: /etc/vsftpd/vsftpd.conf
运行rpm -qc vsftpd显示如下内容即可

[root@localhost ~]# rpm -qc vsftpd
/etc/logrotate.d/vsftpd
/etc/pam.d/vsftpd
/etc/vsftpd/ftpusers
/etc/vsftpd/user_list
/etc/vsftpd/vsftpd.conf

查看防火墙通过的端口 firewall-cmd --list-ports 没有查询到端口。
开启防火墙端口 sudo firewall-cmd --add-port=21/tcp --permanent 比如80 21 20 3306
开启后需要重启防火墙才生效 service firewalld restart
此时lianxin用户已经可以登陆(可能会以PORT模式连接。) root用户 错误530
vim /etc/vsftpd/ftpusers 禁止登录用户配置文件 如果要登录的用户在里面,删除此用户

4.常见报错信息类型
500 ##权限过大 chmod a-w /home/lianxin/wwwroot 或者参考https://blog.csdn.net/bluishglc/article/details/42399439
530 ##认证失败
550 ##程序本身不允许
553 ##服务器上的文件系统不允许

取消匿名登录 vi /etc/vsftpd/vsftpd.conf
anonymous_enable=YES | NO ##匿名用户登陆权限,YES允许匿名用户登录
local_enable=YES ##本地用户登陆权限,NO不允许本地用户登录
write_enable=YES ##本地用户写的权限开启

此段未配置 可参考https://www.cnblogs.com/liangml/p/6411548.html
anon_upload_enable=YES                ###上传
anon_world_readable_only=NO           ###下载
anon_other_write_enable=YES           ###删除文件,
anon_mkdir_write_enable=YES           ###建立文件夹,重命名 mv westos/linux
put  ##上传
get  ##下载

chown_uploads=YES                        ###开启文件上传用户的权限
chown_username=student                ###文件上传用户为student
chown_upload_mode=0644               ###文件权限为644
anon_umask=022                              ###匿名用户系统保留权限022(777-111=666-022=644)

chgrp lianxin /home/lianxin/wwwroot ###设置/home/lianxin/wwwroot为lianxin的组,lianxin可写,/wwwroot也可写,如果不设置这个的话lianxin用户登陆FTP 是不可以写入的。
测试 ftp 192.168.1.253 输入用户名密码

启动 systemctl start vsftpd
重启 systemctl restart vsftpd.service
查看状态 /bin/systemctl status vsftpd.service
查询ftp版本rpm -qa | grep ftp
运行ftp 192.168.1.2 提示找不到ftp命令是因为ftp客户端没有安装
安装ftp客户端 yum install ftp
查看开放端口 nmap 127.0.0.1 提示找不到namp命令
安装namp yum install nmap

FTP具体配置参考 https://blog.csdn.net/qq_37798548/article/details/82692134
vsftp中文说明 https://www.xp.cn/b.php/4542.html
ftp 若遇530错误可参考:https://www.cnblogs.com/bky185392793/p/7860422.html
530主要是用户没有权限登陆参照/etc/vsftpd/ftpusers 删除里面被禁止的用户
http://www.voidcn.com/article/p-nmufgeja-bqn.html
需要注意的一点 有一个漏洞需要补上。浏览器可以访问网站目录的漏洞处理办法如下
chmod 755 -R wordpress/ 修改相关目录的权限:
vim httpd.conf 修改 Apache 的配置文件
Options None 找到 Options Indexes FollowSymLinks, 将其注释掉并修改为:
systemctl restart httpd 保存并退出后,重启 Apache 服务器:

—— 接下来安装Apache
首先配置好yum源 参考https://www.linuxidc.com/Linux/2019-08/160310.htm
yum install httpd -y ##apache软件
yum install httpd-manual ##apache手册 可选
systemctl start httpd 启动httpd

设置防火墙
firewall-cmd --list-all##列出火墙信息,查看那些服务是火墙允许通过的
firewall-cmd --permanent --add-service=http##永久允许http
firewall-cmd --reload ##火墙重新加载,读取重新加入的服务 出现 services: ssh dhcpv6-client http表示添加成功

默认文件位置介绍
/var/www/html/ ###默认发布目录
/var/www/html/index.html ###默认发布文件
/etc/httpd/logs/error_log ##访问错误日志 (访问网站过程中出现报错,可参考)
默认端口 :80

/etc/httpd/conf/httpd.conf ###主配置文件 修改网站默认目录在这里
/etc/httpd/conf.d/*.conf ###子配置文件
httpd_sys_content_t ##默认安全上下文

网站默认目录为 /var/www/html 在这个目录上传一个index.html的文件进行测试网站打开是否正常。

Apache的配置文件的更改
(1)默认发布文件可以指定多个
vim /etc/httpd/conf/httpd.conf            ###主配置文件
DirectoryIndex index.php index.html westos     ##两个默认发布目录,当index.php不存在时,访问index.html按顺序访问
systemctcl restart httpd ##重启httpd
(2)修改默认发布目录 (默认网站目录)
DocumentRoot “/westos/html" 默认的改为自己要的
<Directory "/westos/html"> 默认的改为自己要的
systemctl restart httpd.service 修改默认发布目录后,访问到的页面就是修改
的/westos/html/index.html

出现430禁止访问 chmod -R 755 /westos/html 给予权限
chmod -R 755 /westos/html 赋予/westos/html文件夹775权限 同时需要保证上一级目录也有执行权限 /home/lianxin

systemctl start httpd #启动
systemctl stop httpd.service #停止
systemctl restart httpd.service #重启
systemctl enable httpd.service #开机启动
systemctl disable httpd.service #开机不启动
systemctl list-unit-files | grep httpd 查看Apache是否加入到到开机自启动列表httpd.service disabled 为开机不自启动
systemctl status httpd.service #检查httpd状态
httpd -v 输出Server version: Apache/2.4.6 (CentOS)

—— 接下来安装PhP
yum install php 安装 PHP
vim /var/www/html/index.php ##默认发布目录中建立 (没修过过网站目录的)
目录下新建php.php文件 为下面内容即可显示php的综合信息

<?php 
   phpinfo(); 
   ?>

 

访问http://192.168.1.252/php.php显示出PHP详细信息
目录下新建CGI.php文件可以检测PHP-FPM    CGI

<html>
<body>
<div style="width: 100%; font-size: 40px; font-weight: bold; text-align: center;">
<?php
   print Date("Y/m/d/s");
?>
</div>
</body>
</html>

 

同时注意不能再windows编辑liunx文件上传。
vi /etc/php.ini
AddHandler cgi-script .cgi # line 898: 取消注释,设置时区
</Directory>
date.timezone = "Asia/Shanghai"

cp /usr/local/src/php-7.2.0/sapi/fpm/init.d.php-fpm /ect/init.d/php-fpm 
chmod 755 /etc/init.d/php-fpm #分配权限 
service php-fpm start #启动 
chkconfig php-fpm on #开机启动 
ps aux |grep php-fpm #检查是否启动 
netstat -ant |grep 9000
systemctl list-units --type=service           #查看当前运行的服务

 

systemctl restart php-fpm 重启命令
systemctl start php-fpm 启动命令
systemctl stop php-fpm 停止命令
php -v 查看HPH版本
php -info | grep php.ini 查询php.ini位置

—— 看看mariadb是否正常
yum install  mariadb-server.x86_64   -y    ##安装mariadb
systemctl start mariadb                              ##启动mariadb
netstat -antlpue | grep mysql                   ##过滤,网络接口
/etc/my.cnf                                    ##主配置文件
vim /etc/my.cnf                             ##在symbolic-links=0下面增加下一句代码 =1
skip-networking=1                     ##跳过网络接口
systemctl restart mariadb         ##重启
用netstat -antlpue | grep mysql查看     ##网络接口成功跳过  没有返回即可

3.mysql的基本使用
(1)密码设置
mysql_secure_installation     ##第一次安装mysql以后通过这条命令可以对mysql进行设置
会提示可以运行mysql_secure_installation。运行mysql_secure_installation会执行几个设置:
Set root password? 为root用户设置密码
Remove anonymous users? 删除匿名用户?
Disallow root login remotely? 禁止root远程登陆
Remove test database and access to it? 删除测试数据库并且和访问它
Reload privilege tables now? 重新载入特权表
(2)登陆
mysql -uroot -p                      ##这种登陆方式比较安全

(3)查看         数据库运行命令,代码分号也要打 以下部分为数据库命令(PS:数据库中输入命令没打分号会出现一个箭头,指示命令没有输完。这时候需要打分号后回车即可)
show databases;                   ##显示数据库
use mysql;                    ##进入mysql数据库
show tables;                ##显示数据库中的表
desc user;                    ##查看mysql.user表的数据结构
select host,user,password from user;    ##查询user表中的host,user,password字段
create database westos;             ##创建westos数据库   退出到主目录操作
use westos;                            ##进入westos数据库
以下为数据库基本操作方法::::参考https://www.jianshu.com/p/d91cf33e5216
(4)创建表
create table linux(
-> username varchar(15) not null,
-> password varchar(15) not null,
-> age varchar(4) not null);
##创建表,username,password字段 自行修改 为
实体机下Centos7操作系统的安装,PHP,FTP,mariadb,Apache的安装设置,搭建网站完美实现
desc linux; 查看
select * from mysql.user ##查询mysql库下的user表中的所有
(5)更改
alter table linux rename redhat; ##linux表重命名为表redhat;
alter table redhat add class varchar(6); ##添加age字段到linux表中
ALTER TABLE redhat DROP age ##删除age字段
ALTER TABLE redhat ADD age varchar(6) AFTER name ##在name字段后添name字段
show tables;
(6)插入
在westos数据库的redhat表中插入数据
insert into redhat values ('user1','passwd1'); ##在linux表中插入值为username,password
(7)更新
update redhat set password=password('passwd2') where username=user1; ##更新linux表中user1 的密码为password2
delete from redhat where username='user1'; ##删除linux表中user1的所有内容
(8)授权
CREATE USER user@'localhost'identified by 'passwd'; ##授权user 密码为passwd
grant select on *.* to user@localhost; ##只能在本地 查询数据库的所有内容
show grants for user@localhost; ##查看权限
当切换到gao@localhost,删除数据库时没有权限
在root用户下授权,成功删除数据库
revoke select on westos.* from lee@localhost; ##取消lee下的westos数据库的查看功能
show grants for gao@localhost; ##查看权限,gao@localhost的删除权限被取消
(9)备份
redhat中的数据库
mysqldump -uroot -predhat westos > /mnt/mysql.sql ##备份westos数据库到mysql.sql
为了证明数据的却成功备份了,现在删除mariadn中的redhat数据库
mysql     -uroot -predhat -e "create database redhat"    ##-e:执行命令创建redhat库
mysql     -uroot -predhat redhat < /mnt/mysql.sql          ##恢复mysql.sql 到redhat库
查看redhat数据库,数据是否成功备份(结果显示备份成功,也成功恢复数据)
也可以采用直接在备份中修改,也能成功恢复数据
vim /mnt/mysql.sql ##直接在备份里修改也可以:
create database westos;
use westos;
mysql -uroot -p123 < /mnt/mysql.sql ##备份文件中已经创建了数据库,并使用,所以不用在指定数据库,直接导入即可
4.root用户的密码恢复
systemctl stop mariadb                    ##停止maria服务
mysqld_safe --skip-grant-tables &   ##跳过grant-tables授权表
mysql                                          ##进入数据库时发现不用输密码,不用认证
update mysql.user set Password=password('123') where User='root';  ##修改密码为'123'
ps aux | grep mysql ##显示mysql进程
kill -9 mysql进程的id ##结束mysql进程
systemctl restart mariadb ##开启服务
当采用mysql进入时,发现不能进入,密码输入正确方可进入数据库
 ——接下来安装数据库的图形phpmyadmin开启
下载phpMyAdmin-4.4.10-all-languages解压上传到网站根目录

rpm -qa | grep mariadb 查询是否安装MariaDB客户端 返回是空则没有安装 返回版本号则又安装 注意一下大小写
rpm -qa | grep MariaDB-client 新版本
rpm -qa | grep MariaDB-server 新版本
rpm -qa | grep mariadb-server 查询是否安装MariaDB服务端 返回是空则没有安装 返回版本号则又安装
systemctl restart mariadb.service 重启MariaDB命令
systemctl start mariadb.service 启动服务
systemctl enable mariadb 设置开机自启动
systemctl status mariadb 查看状态 显示active (running)表示运行中
yum install -y 需要安装的mariadb版本进行安装
mysql_secure_installation 设置数据库root密码,修改密码也可以使用此密码,回车输入密码,中途提示修改密码等输入几次Y。
mysql -u root -p 输入密码后回车即可即可登录
远程链接数据库MySQL/MariaDB遇到ERROR 1130 解决方法
此问题是MariaDB自带的库mysql中的表user的问题,当内外电脑IP变化后会又会被拒绝。彻底解决的办法参考https://www.cnblogs.com/lanuage/p/8179589.html
临时登录参考https://blog.csdn.net/u010566813/article/details/42807001

(现在都不安装这个了用了mysqlnd)安装php-sql这个插件依赖报错的处理办法: 参考https://blog.csdn.net/qq_39796249/article/details/81944199
您可以尝试添加 --skip-broken 选项来解决该问题
您可以尝试执行:rpm -Va --nofiles --nodigest
先清理一下yum缓存试试 yum clean all

常用命令表:
df -h -h以人们易读的GB、MB、KB等格式显示 。显示系统中包含每个文件名参数的磁盘使用情况 参考https://www.cnblogs.com/wqbin/p/11048629.html
find / -type d -iname "MariaDB" 查找MariaDB文件夹目录 参考https://www.sohu.com/a/283040389_261288
grep 搜索 参考https://www.linuxidc.com/Linux/2018-11/155397.htm
yum clean all 清理yum缓存 yum报错 尝试使用
sudo yum autoremove php54.x86_64* php卸载命令
sudo yum update 更新本地内置的程序
sudo apt-get upgrade
rpm -qc vsftpd 查找安装包的配置文件 参考https://blog.csdn.net/YLREHC/article/details/90216651
cat /etc/passwd 查看所有的用户信息,详情如下图
cat /etc/passwd|grep lianxin,用于查找某个用户
cat /etc/group查看所有组信息
cat /etc/group|grep whell cat /etc/group|grep 组名,用于查找某个用户组,如whell
groups 查看当前登录用户的组内成员
rm -r ./* 删除当前目录所有文件
groups test 查看test用户所在的组,以及组内成员
whoami 查看当前登录用户名usermod -aG usertest test ##多个组之间用空格隔开 把test用户追加到usertest组,注意-a参数,如果不加-a参数,test用户只属于usertest组
chmod 是linux中更改文件权限的命令 比如chmod -R 755 /home/lianxin 将lianxin文件夹设为755权限
chown 用来更改某个目录或文件的用户名和用户组的(即文件夹归属权) chown root:root /home/lianxin 就是把home下的lianxin下的所有文件的属组都改成root和root
网站修改默认目录出现402错误请执行chmod -R 755 /home/lianxin
systemctl status httpd 查看httpd启动状态日志,遇到httpd不能启动可以运行此命令检查错误位置:
/phpmyadmin/libraries/config.default.php 编辑此文件修改以下内容

$cfg['PmaAbsoluteUri'] = '';这里填写 phpMyAdmin 的访问网址。
$cfg['Servers'][$i]['user'] = 'root'; // 填写 MySQL 访问 phpMyAdmin 使用的 MySQL 用户名,默认为root。
fg['Servers'][$i]['password'] = ''; // 填写对应上述 MySQL 用户名的密码。
$cfg['Servers'][$i]['auth_type'] = 'cookie';考虑到安全的因素,建议这里填写 cookie。在此有四种模式可供选择,cookie,http,HTTP,config 浏览器访问填写http
$cfg['blowfish_secret'] = '';如果认证方法设置为 cookie,就需要设置短语密码,设置为什么密码,由您自己决定,这里不能留空,否则会在登录 phpMyAdmin 时提示的错误。

一般性故障统计:
yum更新遇到依赖错误的处理经验总结 http://www.path8.net/tn/archives/6098
https://ask.csdn.net/questions/355955
Linux之mariadb详解 https://blog.csdn.net/ZZL95415/article/details/79245143
bash: php 未找到命令 https://blog.csdn.net/wangxw725/article/details/100587281
为什么linux安装程序 都要放到/usr/local目录下 https://blog.csdn.net/zhouf00/article/details/90056024
完全卸载PHP,重新安装 https://blog.csdn.net/weixin_43885417/article/details/84873721
/usr/bin/python^M: 解释器错误: 没有那个文件或目录  https://www.cnblogs.com/Braveliu/p/10560429.html

最近再CentOS7上利用yum来安装依赖环境,安装到最后提示错误,错误截图如下,仔细看提示的错误,它需要安装graphite2(x86-64)-1.3.6-1.e17_2,但是已经安装了更高版本的,才导致yum安装失败
解决方法:将高版本的依赖包卸载,用rpm -e --nodeps xxxxxxx,这种卸载方式可以脱离依赖关系,然后再重新yum安装就成功了   https://blog.csdn.net/qq_39796249/article/details/81944199
本文大面积参考 https://blog.csdn.net/zzl95415/article/list/2?t=1

  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的微信公众号
  • 我的微信公众号扫一扫
  • weinxin
河南曲剧选段mp3打包下载(117个)
眉户戏视频65个打包下载 FLY/MP4格式
电脑电视维修视频及数据、主板维修、液晶电视数据、液晶显示器数据、液晶电视维修资料、液晶显示器维修资料
千图网 千库网 背景图素材 免抠图 jpg png 去水印 下载【解析器】

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: