本文目录一览:
- 1、怎么安装PHP环境?
- 2、centos7怎么永久关闭防火墙
- 3、如何关闭centos7上的firewall
- 4、CentOS 7.2 里iptables防火墙怎么关闭
- 5、Apache 服务
- 6、/cp rfv mnt opt centos报错
怎么安装PHP环境?
LAMP/LNMP 环境搭建
一.检查系统环境
1.确认centos版本
[root@localhost ~]# cat /etc/redhat-release
2.检查是否安装过apache
rpm -qa | grep httpd
或者:
apachectl -v
或者:
httpd -v
3.检查是否安装过Mysql
service mysqld start
如果未被识别则没有安装
如果系统安装过,或者安装失败,清理一下系统
4.清理Mysql痕迹
yum remove mysql
rm -f /etc/my.cnf
5.卸载Apache包
rpm -qa|grep httpd
注意:如果是新的系统或者你从来没有尝试安装过,则以上步骤省略
二.安装Apache、PHP、Mysql
停止防火墙服务
[root@localhost ~]# systemctl stop firewalld.service
禁用防火墙开机启动服务
[root@localhost ~]# systemctl disable firewalld.service
1.安装apache
[root@localhost ~]# yum -y install httpd
2.安装php
[root@localhost ~]# yum -y install php
3.安装php-fpm
[root@localhost ~]# yum -y install php-fpm
4.安装Mysql
[root@localhost ~]# yum -y install mysql
5.安装 mysql-server
[root@localhost ~]# yum install mariadb-server
CentOS 7+ 版本将MySQL数据库软件从默认的程序列表中移除,用mariadb代替了,entos7配置教程上,大多都是安装mariadb,因为centos7默认将mariadb视作mysql。
因为mysql被oracle收购后,原作者担心mysql闭源,所以又写了一个mariadb,这个数据库可以理解为mysql的分支。如果需要安装mariadb,只需通过yum就可。
6.安装 php-mysql
[root@localhost ~]# yum -y install php-mysql
三.安装基本常用扩展包
1.安装Apache扩展包
yum -y install httpd-manual mod_ssl mod_perl mod_auth_mysql
2.安装PHP扩展包
yum -y install php-gd php-xml php-mbstring php-ldap php-pear php-xmlrpc php-devel
3.安装Mysql扩展包
yum -y install mysql-connector-odbc mysql-devel libdbi-dbd-mysql
四.配置Apache、mysql开机启动
重启Apache、mysql服务(注意这里和centos6有区别,Cenots7+不能使用6的方式)
systemctl start httpd.service #启动apache
systemctl stop httpd.service #停止apache
systemctl restart httpd.service #重启apache
systemctl enable httpd.service #设置apache开机启动
重启数据库
#启动MariaDB
[root@localhost ~]# systemctl start mariadb.service
#停止MariaDB
[root@localhost ~]# systemctl stop mariadb.service
#重启MariaDB
[root@localhost ~]# systemctl restart mariadb.service
#设置开机启动
[root@localhost ~]# systemctl enable mariadb.service
五.配置Mysql
初次安装mysql是没有密码的,我们要设置密码,mysql的默认账户为root
方式1:设置 MySQL 数据 root 账户的密码:
[root@localhost ~]# mysql_secure_installation
当出现如下提示时候直接按回车:
Enter current password for root
出现如下再次回车:
Set root password? [Y/n]
出现如下提示输入你需要设置的密码,这里输入了root,输入密码是不显示的,回车后再输入一次确认:
New password:
接下来还会有四个确认,分别是:
Remove anonymous users? [Y/n]
Disallow root login remotely? [Y/n]
Remove test database and access to it? [Y/n]
Reload privilege tables now? [Y/n]
直接回车即可。
方式2:进入mysql mysql -r
修改mysql密码:set password for 'root'@'localhost'=password('root');
mysql授权远程连接(navicat等): grant all on *.* to root identified by 'root';
六.测试环境
我们在浏览器地址栏输入,正常显示,说明我们的lamp 环境搭建成功
七.安装nginx
yum install yum-priorities -y
wget
rpm -ivh nginx-release-centos-7-0.el7.ngx.noarch.rpm
yum install nginx
Nginx 版本号可变更版本
八.配置nginx
1.nginx启动,停止,重启
systemctl start nginx.service #启动nginx
systemctl stop nginx.service #停止
systemctl restart nginx.service #重启
systemctl enable nginx.service #设置开机启动
更改nginx端口号(根据自己需求)
cd /etc/nginx/conf.d/
vim default.conf
把listen 80改成listen 81
3.访问即可看到nginx首页
安装完成访问时候需要启动php-fpm,不重启访问会出现下载文件,重启命令如下
systemctl start php-fpm.service #启动php-fpm
systemctl enable php-fpm.service #设置开机启动
4.更改nginx配置文件识别php
vi /etc/nginx/conf.d/default.conf,把之前的#给去掉就可以了,顺手改一下
location ~ .php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html/$fastcgi_script_name;
include fastcgi_params;
}
方法二 安装nginx
yum install nginx
启动nginx,并设置为开机启动
systemctl start nginx
systemctl enable nginx
vim /etc/nginx/conf.d/default.conf
5.在 /usr/share/nginx/html中新建一个test.php
访问即可看到php页面
修改完成配置记得启动apache 和php-fpm 哦!
九.负载配置
upstream site{
server 172.16.170.138;
server 172.16.170.139;
}
server {
listen 80;
server_name localhost;
#charset koi8-r;
#access_log /var/log/nginx/log/host.access.log main;
location / {
root /usr/share/nginx/html;
index index.html index.htm;
proxy_pass ;
}
apache 默认目录 /var/www/html
nginx 默认目录 /usr/share/nginx/html
升级php版本
centos7 默认安装php是5.4
查看yum的可安装的php版本列表
yum provides php
开始升级PHP更新源:
rpm -Uvh
rpm -Uvh
yum remove php-common -y #移除系统自带的php-common
php72版本
yum install -y php72w php72w-opcache php72w-xml php72w-mcrypt php72w-gd php72w-devel php72w-mysql php72w-intl php72w-mbstring
php56版本
yum install -y php56w php56w-opcache php56w-xml php56w-mcrypt php56w-gd php56w-devel php56w-mysql php56w-intl php56w-mbstring #安装依赖包
查看php版本
php -v
安装php fpm:
yum install php72w-fpm
yum provides php-fpm #因为我是准备搭建lnmp,所以安装php-fpm,这里会提示多个安装源,选择5.6版本的安装就可以了
yum install php56w-fpm-5.6.31-1.w7.x86_64 -y
systemctl start php-fpm.service 【启动】
systemctl enable php-fpm.service【开机自启动】
CentOS yum有时出现“Could not retrieve mirrorlist ”的解决办法——resolv.conf的配置
原因:没有配置resolv.conf
解决方法:
到/etc目录下配置resolv.conf加入nameserver IP,如:
nameserver 8.8.8.8
nameserver 8.8.4.4
search localdomain
保存再次运行上面的命令就可以。
nginx目录 : /usr/share/nginx/html
/etc/nginx/conf.d/default.conf nginx配置目录
apache目录 : /var/www/html
/etc/httpd/conf/httpd.conf apache配置文件
nginx 配置域名
cd /etc/nginx
cp default.conf imooc.conf
修改server_name imooc.test.com 以及项目目录
配置虚拟域名 windows 访问需要在host增加 linuxip
ServerName
DocumentRoot "/var/www/html/learnlaravel/public"
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
关闭防火墙
setenforce 0
centos7怎么永久关闭防火墙
1、首先需要将xshell软件打开并连接到centos主机,然后输入命令“systemctl status firewalld.service”并按下回车键。
2、然后在下方可以查看得到“active(running)”,此时说明防火墙已经打开了。
3、在命令行中输入systemctl stop firewalld.service命令,进行关闭防火墙。
4、然后再使用命令systemctl status firewalld.service,在下方出现disavtive(dead),这样就说明防火墙已经关闭。
5、再在命令行中输入命令“systemctl disable firewalld.service”命令,即可永久关闭防火墙。
如何关闭centos7上的firewall
1、执行“systemctl stop firewalld.service”,停止系统中的firewall服务,“systemctl disable firewalld.service” ,禁止firewall开机启动
2、通过yum来安装iptables,执行命令“yum install iptables-services”,也可以使用命令“yum -y install iptables-services”来跳过确认问题,直接安装iptables。
3、安装完成后,在/etc/sysconfig/下会多出4个以ip开头的文件,打开iptables,可以看见默认情况下系统已经添加了一些规则,您之后可以根据实际情况在这里添加或删除规则
4、编辑完iptables文件之后需要通过“systemctl restart iptables.service”来重启iptables,使文件中的规则生效。另外,您可以执行“systemctl enable iptables.service”命令让iptables服务每次都随开启自动启动。
5、可以手动通过iptables -A来添加规则,但该规则会在重启后失效,可以通过iptables-save命令将当前系统中所有生效的规则导出至/etc/sysconfig/iptables来实现规则的保存。
CentOS 7.2 里iptables防火墙怎么关闭
centos从7开始默认用的是firewalld,这个是基于iptables的,虽然有iptables的核心,但是iptables的服务是没安装的。所以你只要停止firewalld服务即可:
sudo systemctl stop firewalld.service sudo systemctl disable firewalld.service
如果你要改用iptables的话,需要安装iptables服务:
sudo yum install iptables-services
sudo systemctl enable iptables sudo systemctl enable ip6tables
sudo systemctl start iptables sudo systemctl start ip6tables
Apache 服务
一、介绍
二、Linux下apache的安装
三、apache的基础信息
四、配置apache服务
五、apache的虚拟主机
六、Apache httpd.conf配置详解
七、特殊使用场景
1. Linux Apache配置多个站点同时运行
Apache HTTP Server (简称Apache)是 Apache软件基金会 的一个开放源码的网页服务器,可以在大多数计算机操作系统中运行,由于其多平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩展,将Perl/Python等解释器编译到服务器中。 [2]
Apache HTTP服务器 是一个模块化的服务器,源于NCSAhttpd服务器,经过多次修改,成为世界使用排名第一的 Web服务器 软件。
它可以运行在几乎所有广泛使用的 计算机平台 上。
Apache源于NCSAhttpd服务器,经过多次修改,成为世界上最流行的 Web服务器 软件之一。Apache取自“a patchy server”的读音,意思是充满补丁的服务器,因为它是 自由软件 ,所以不断有人来为它开发新的功能、新的特性、修改原来的缺陷。Apache的特点是简单、速度快、性能稳定,并可做 代理服务器 来使用。
yum install httpd -y #安装apache软件包
systemctl start httpd #打开服务
systemctl enable httpd #开机自启动
systemctl stop firewalld #关闭防火墙
systemctl disable firewalld #开机不启动防火墙
systemctl restart httpd#重新开启
firewalld-cmd --permanent --add-service=http #在防火墙策略中添加http和https服务
firewalld-cmd --permanent --add-service=https
firewall-cmd --permanent --add-port=8080/tcp
firewalld-cmd --reload #重新加载策略
firewall-cmd --list-all #查看防火墙:
apache还有一个使用手册:需要安装httpd-manual包
yum install httpd-manual -y
各个主要子目录的用途如下:
bin:存放httpd服务的各种执行程序文件。包括主程序httpd、服务控制工具apachectl等。
cgi-bin:存放各种CGI程序文件。
logs:存放httpd服务的日志文件。
conf:存放httpd服务的各种配置文件,包括主配置文件httpd.conf、增强配置子目录extra等。
htdocs:存放网页文档,包括默认首页文件index.html等。
module:存放httpd服务的各种模块文件。
1.在默认发布目录发布内容
主配置目录: /etc/httpd/conf
主配置文件:/etc/httpd/conf/httpd.conf
子配置目录:/etc/httpd/conf.d
子配置文件:/etc/httpd/conf.d/*.conf
默认发布目录:/var/www/html
默认发布文件:index.html
默认端口:80
默认安全上下文:httpd_sys_content_t
程序开启默认用户:apache
apache日志:/etc/httpd/logs/*
netstat -antlupe | grep httpd ##查看当前http服务的网络接口
2.修改默认端口
vim /etc/httpd/conf/httpd.conf
Listen 8080 ##修改默认端口为8080
3.修改默认发布文件:
默认发布文件就是访问apache时没有指定文件名称时默认访问的文件。
这个文件可以指定多个,有访问顺序
vim /etc/httpd/conf/httpd.conf
DirectoryIndex westos.html index.html
##当index.html不存在时,访问westos.html
##如果将westos.html放到index.html前面,
在两个文件都存在的情况下会默认访问westos.html里面的内容
##如果没编辑/etc/httpd/conf/httpd.conf(没添加加westos.html),
要想看到westos的页面,则在浏览器中输入:http端IP/westos.html 即可
# systemctl restart httpd.service 修改完配置文件记得一定要重启服务生效
4.修改默认发布目录
vim /etc/httpd/conf/httpd.conf
DocumentRoot "/www/html"
Directory "/www/html"
Require all granted
/Directory
index.html:apache默认发布文件
news.conf 或 music.conf:apache子配置文件
恢复默认发布目录,并创建默认文件index.html
cd /etc/httpd/conf.d/ #进入apache服务子配置目录
vim adefault.conf #建立默认发布目录配置文件
VirtualHost _default_:80
DocumentRoot /var/www/html #发布文件路径
CustomLog "logs/adefault.log" combined #日志路径,这里写相对路径,内容在/etc/httpd/logs/*.log里面
/VirtualHost
1. Linux Apache配置多个站点同时运行
这样一种场景;我们有一台服务器;但是想挂多个网站;那么Apache下配置虚拟主机可以满足这个需求;
1). 比较简单的是基于主机名的配置步骤如下:
step0:示例环境:
ip:115.28.17.191
域名:baijunyao.com
thinkbjy.com
目录: /var/www/html/baijunyao
/var/www/html/thinkbjy
step1:修改hosts文件
[root@iZ28qa8jt4uZ /]# ifconfig; //查看ip并记录自己的ip地址
[root@iZ28qa8jt4uZ /]# vim /etc/hosts; //修改hosts文件 添加如下两行内容
115.28.17.191 baijunyao.com
115.28.17.191 anlianma.com
step2:修改httpd.conf文件
[root@iZ28qa8jt4uZ /]# vim /etc/httpd/conf/httpd.conf; //修改httpd.conf文件 删除990行 NameVirtualHost *:80前的#注释
step3:修改httpd-vhosts.conf文件
[root@iZ28qa8jt4uZ /]# vim /etc/httpd/conf.d/virtual.conf; //设置httpd-vhosts.conf如下 如没有则新建
VirtualHost *:80
DocumentRoot /var/www/html/baijunyao
ServerName baijunyao.com
/VirtualHost
VirtualHost *:80
DocumentRoot /var/www/html/anlianma
ServerName anlianma.com
/VirtualHost
虚拟主机配置到此结束;在对应的目录下新建html页面测试即可;
2). 另一种方式是
实际应用中,一个使用自己独有的配置文件,另一个使用默认Apache配置
Apache默认配置不表述。下面仅仅介绍独立配置文件,以zabbix为例
/cp rfv mnt opt centos报错
关闭防火墙和selinux 和主机映射(须双节点都操作)
#compute
[root@compute ~]# setenforce 0
[root@compute ~]# getenforce
Permissive
[root@compute ~]# systemctl stop firewalld systemctl disable firewalld
#controller
[root@compute ~]# setenforce 0
[root@compute ~]# getenforce
Permissive
[root@compute ~]# systemctl stop firewalld systemctl disable firewalld
#主机映射(这里就放一个节点的示例)
[root@controller ~]# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168..10 controller
192.168..20 compute
配置yum(我所配置的是http服务yum,如果配置ftp服务的可以参考其他作者文章)
#controller
[root@controller ~]# mv /etc/yum.repos.d/* /home/
[root@controller ~]# mkdir /opt/centos
[root@controller ~]# mkdir /opt/openstack
[root@controller ~]# vi /etc/yum.repos.d/http.repo
[centos]
name=centos
baseurl=
gpgcheck=0
enabled=1
[iaas]
name=iaas
baseurl=
gpgcheck=0
enabled=1
上传1804文件和iaas文件到controller /root/下
[root@controller ~]# ll
total 8075368
-rw-------. 1 root root 1836 Dec 15 14:45 anaconda-ks.cfg
-rw-r–r--. 1 root root 4470079488 Oct 30 03:57 CentOS-7-x86_64-DVD-1804.iso
-rw-r–r--. 1 root root 3799093248 Oct 30 11:18 chinaskills_cloud_iaas.iso
将centos文件挂载到/opt/centos下,iaas文件挂载到/opt/openstack下
[root@controller ~]# mount -o loop CentOS-7-x86_64-DVD-1804.iso /opt/centos/
mount: /dev/loop0 is write-protected, mounting read-only
[root@controller ~]# mount -o loop chinaskills_cloud_iaas.iso /opt/openstack/
mount: /dev/loop1 is write-protected, mounting read-only
检查yum源
[root@controller ~]# yum clean all yum repolist
安装http服务并在http默认文件中创建centos和openstack文件
[root@controller ~]# yum install -y httpd
[root@controller ~]# mkdir /var/www/html/centos
[root@controller ~]# mkdir /var/www/html/openstack
将挂载的文件cp到http默认访问目录的文件中
centos文件
[root@controller ~]#cp -rfv /opt/centos/* /var/www/html/centos/
iaas文件
[root@controller ~]#cp -rfv /opt/openstack/* /var/www/html/openstack/
开启http服务
[root@controller ~]# systemctl start httpd systemctl enable httpd
将controller节点http.repo文件改为http主机名地址
配置compute节点yum
#compute
[root@compute ~]# cat /etc/yum.repos.d/http.repo
[centos]
name=centos
baseurl=
gpgcheck=0
enabled=1
[iaas]
name=iaas
baseurl=
gpgcheck=0
enabled=1
检查yum源
[root@controller ~]# yum clean all yum repolist
#compute分两块空分区 作为swift和cinder的分区
[root@compute ~]# lsblk -l
[root@compute ~]# fdisk /dev/sda
n 建立新分区
p primary分区
w 写入
[root@compute ~]# lsblk -l
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 1.8T 0 disk
sda1 8:1 0 1G 0 part /boot
sda2 8:2 0 857.9G 0 part
centos-root 253:0 0 350G 0 lvm /
centos-swap 253:1 0 7.9G 0 lvm [SWAP]
centos-home 253:2 0 500G 0 lvm /home
sda3 8:3 0 100G 0 part
sda4 8:4 0 100G 0 part
双节点安装iaas-xiandian包(注意配置不能出错,出错后面可能有很多问题)
[root@controller ~]# yum install -y iaas-xiandian
[root@compute ~]# yum install -y iaas-xiandian
修改openrc.conf文件
INTERFACE_IP= ## 在那个节点就配置那个节点的IP
INTERFACE_NAME= ## 外网卡 第二张网卡
##依据实际分区填写配置
BLOCK_DISK=sda3
OBJECT_DISK=sda4
接下来就是跑脚本完成openstack搭建
#controller和compute
iaas-pre-host.sh
跑完此脚本ctrl+D 重新连接即可
#controller
iaas-instack-mysql.sh iaas-instack-keystone.sh iaas-instack-glance.sh
#controller 和 compute
iaas-instack-nova-controller.sh iaas-instack-neutron-controller.sh
iaas-instack-nova-compute.sh iaas-instack-neutron-compute.sh
#controller
iaas-instack-dashboard.sh
安装完成后 登录dashboard页面