yum安装Nginx,Nginx虚拟主机,安装wordpress,安装discuz

yum安装Nginx

文档:
http://nginx.org/en/linux_packages.html

编辑yum仓库:

vi /etc/yum.repos.d/nginx.repo

粘贴:

[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/7/$basearch/
gpgcheck=0
enabled=1

yum安装Nginx,Nginx虚拟主机,安装wordpress,安装discuz_第1张图片
安装:
yum list |grep nginx 查看一下nginx的yum包
yum安装Nginx,Nginx虚拟主机,安装wordpress,安装discuz_第2张图片
pkill nginx 杀死之前编译安装启动的Nginx
rm -rf /usr/local/nginx/ 卸载之前编译安装的Nginx
yum安装Nginx,Nginx虚拟主机,安装wordpress,安装discuz_第3张图片
yum install -y nginx 用yum安装Nginx

配置文件路径:
/etc/nginx
主配置文件:/etc/nginx/nginx.conf
子配置文件:/etc/nginx/conf.d/default.conf
yum安装Nginx,Nginx虚拟主机,安装wordpress,安装discuz_第4张图片
如果修改了配置文件,需要查看配置文件有没有语法错误: nginx -t
结果里面这样显示ok的就是没错误的
在这里插入图片描述
nginx -v 可以查看他的版本
在这里插入图片描述
nginx -V 查看他的编译参数
yum安装Nginx,Nginx虚拟主机,安装wordpress,安装discuz_第5张图片
启动:

systemctl start nginx

ps aux |grep nginx 查看nginx服务是否启动
yum安装Nginx,Nginx虚拟主机,安装wordpress,安装discuz_第6张图片
关闭Nginx服务:systemctl stop nginx
在这里插入图片描述
重启Nginx服务:systemctl restart nginx

补充:
pkill 杀死一个进程,如 pkill nginx

yum remove nginx    卸载Nginx

Nginx虚拟主机

虚拟主机:
虚拟主机就是一个站点
HTTP1.1 --> host (域名) 一个WEB服务可以有多个站点
从HTTP1.1开始一个WEB服务可以有多个站点,HTTP1.1之前一个服务器只能有一个域名

定义虚拟主机配置文件,以域名为命名。
nginx配置文件:

vi /etc/nginx/nginx.conf

cd /etc/nginx/conf.d/

/etc/nginx/conf.d/default.conf 虚拟主机(站点)配置文件
在这里插入图片描述
配置一个虚拟主机(站点)需要注意配置好:域名、文件路径
vi default.conf
yum安装Nginx,Nginx虚拟主机,安装wordpress,安装discuz_第7张图片
这里的localhost就可以用本机的IP访问,但是此时打不开,因为80端口不通
yum安装Nginx,Nginx虚拟主机,安装wordpress,安装discuz_第8张图片
在另外一台Linux服务器,用telnet测试一下80端口
在这里插入图片描述
安装一下:yum install -y telnet
测试看到80端口不通
在这里插入图片描述
iptables -nvL 查看防火墙规则
CentOS7自带firewalld服务,默认是开启状态。
想让80端口开通,让别人能访问站点,2种方法:
1、关闭firewalld服务;
2、添加80端口到白名单
这2个方法中建议不要直接关firewalld服务,因为这个firewalld服务还是有一定作用的,做实验无所谓

关闭firewalld服务: systemctl stop firewalld
在这里插入图片描述
关闭firewalld服务后,telnet测试80端口就通了
yum安装Nginx,Nginx虚拟主机,安装wordpress,安装discuz_第9张图片
这个时候这个默认站点就能访问了
yum安装Nginx,Nginx虚拟主机,安装wordpress,安装discuz_第10张图片
开启firewalld服务:systemctl start firewalld

增加80端口:

firewall-cmd --add-port=80/tcp --permanent    (最后的--permanent选项是为了让他永久增加)
firewall-cmd --reload   让配置立即生效

Nginx配置:
虚拟主机就是一个站点,每个站点都有一个域名,上面的例子中没有用域名,直接用的是IP,下面比如我要设定域名:www.aaa.com,编辑配置文件:
vi /etc/nginx/conf.d/default.conf 虚拟主机(站点)配置文件,可以配置域名和路径

yum安装Nginx,Nginx虚拟主机,安装wordpress,安装discuz_第11张图片

nginx -t      //查看配置文件是否有错误
nginx -s reload      //重载配置文件  (重载之前一定要-t一下,看看是否有错)
systemctl restart nginx     //重启  (会中断进程,用户访问会受影响,所以尽量是重载)

yum安装Nginx,Nginx虚拟主机,安装wordpress,安装discuz_第12张图片
接下来需要www.aaa.com指向这个服务器上去才能访问,但是这个域名不是我的,没有它的dns权限,如果有买好自己的域名,可以直接解析过来就好,这里实例用另外一个方法:修改hosts

Linux下的hosts修改:
现在ping这个www.aaa.com域名不是我这个本地IP
yum安装Nginx,Nginx虚拟主机,安装wordpress,安装discuz_第13张图片
Linux下的/etc/hosts,可以修改hosts记录(默认的虚拟主机)
vi /etc/hosts
增加192.168.108.128 www.aaa.com
yum安装Nginx,Nginx虚拟主机,安装wordpress,安装discuz_第14张图片
再去ping一下,此时发现过来了
yum安装Nginx,Nginx虚拟主机,安装wordpress,安装discuz_第15张图片
windows下的hosts修改:
在本地windows目录里面找到hosts
yum安装Nginx,Nginx虚拟主机,安装wordpress,安装discuz_第16张图片
编辑这个文件,里面也加入这行192.168.108.128 www.aaa.com
在这里插入图片描述
在windows里面ping他就通了
yum安装Nginx,Nginx虚拟主机,安装wordpress,安装discuz_第17张图片
此时去访问www.aaa.com这个域名的时候就能打开了
yum安装Nginx,Nginx虚拟主机,安装wordpress,安装discuz_第18张图片
这个就是默认虚拟主机,解析任何域名过来都可以打开这个页面
在windows的hosts配置文件里后面再加上www.bbb.com

在这里插入图片描述
他同样能打开这个页面
yum安装Nginx,Nginx虚拟主机,安装wordpress,安装discuz_第19张图片
默认虚拟主机就是Nginx的第一个虚拟主机。
目前这个目录里面只有一个虚拟主机,所以他是默认虚拟主机了
在这里插入图片描述
cp default.conf 2.conf 拷贝生成一个2.conf
当虚拟主机多的时候,谁排在第一位,谁就是默认虚拟主机
在这里插入图片描述
还有一个方法(建议用这个方法):在default.conf里面listen 80 后面加上default_server,加上这个他就变成了默认虚拟主机了
vi default.conf (default.conf 这个路径是:/etc/nginx/conf.d/default.conf)
yum安装Nginx,Nginx虚拟主机,安装wordpress,安装discuz_第20张图片
此时改一下2.conf这个虚拟主机
vi 2.conf
yum安装Nginx,Nginx虚拟主机,安装wordpress,安装discuz_第21张图片
nginx -t //查看配置文件是否有错误
nginx -s reload //重载配置文件
yum安装Nginx,Nginx虚拟主机,安装wordpress,安装discuz_第22张图片
给www.ccc.com定义一个index.html,在本地给加一条www.ccc.com的记录
在这里插入图片描述
访问www.ccc.com,显示的就是刚写的index.html内容为2222cccc
在这里插入图片描述
此时去访问www.bbb.com,还是访问到了默认虚拟主机
yum安装Nginx,Nginx虚拟主机,安装wordpress,安装discuz_第23张图片
我没有定义www.bbb.com,但是他还是访问到了这个页面,这个就是默认虚拟主机(站点)
yum安装Nginx,Nginx虚拟主机,安装wordpress,安装discuz_第24张图片
任何一个域名只要解析到这个IP,他都能访问到这个站点,所以默认虚拟主机就有一个作用:泛解析

如果有个需求:
有很多域名都需要访问到这个站点,要配置的话,就需要配置很多,比较麻烦,随时都在变动,如果用默认虚拟主机就可以了,不用关心域名多少了,不用去配置了。

如果不需要泛解析,站点默认虚拟主机如果任何人都能访问的话,意味着任何一个域名,只要解析到服务器上就都能访问了,这对服务器来讲就不合适了,此时就应该把默认虚拟主机给禁了

禁掉默认虚拟主机,默认虚拟主机配置里面加一行 deny all;
yum安装Nginx,Nginx虚拟主机,安装wordpress,安装discuz_第25张图片
nginx -t
nginx -s reload
此时再去访问www.bbb.com,就是打不开了,其他指向默认虚拟主机的都是打不开了
yum安装Nginx,Nginx虚拟主机,安装wordpress,安装discuz_第26张图片
yum安装Nginx,Nginx虚拟主机,安装wordpress,安装discuz_第27张图片
yum安装Nginx,Nginx虚拟主机,安装wordpress,安装discuz_第28张图片
但是此时www.ccc.com还是可以访问的
yum安装Nginx,Nginx虚拟主机,安装wordpress,安装discuz_第29张图片
因为www.ccc.com这个并不是默认虚拟主机,配置过他了
定义过的就能访问,没有定义的就不能访问了
yum安装Nginx,Nginx虚拟主机,安装wordpress,安装discuz_第30张图片
后面做网站的时候,虚拟主机配置文件的名字建议用域名作为他的名字,这样以后虚拟主机(站点)多的时候不会弄错,容易管理

开始做一个博客,假设域名是:blog.jinshui.cc
cd /etc/nginx/conf.d/
cp 2.conf blog.jinshui.cc.conf
yum安装Nginx,Nginx虚拟主机,安装wordpress,安装discuz_第31张图片
目前这个域名暂时只作为本地访问,后面用域名直接解析就好,只是本地访问就需要修改本地hosts
在这里插入图片描述
mkdir -p /data/wwwroot/blog.jinshui.cc 先建立好站点的目录

vi blog.jinshui.cc.conf 配置虚拟主机设置,主要是域名、路径还有php(这个接下来博客是用php的)
yum安装Nginx,Nginx虚拟主机,安装wordpress,安装discuz_第32张图片
修改了虚拟主机配置文件记得:nginx -t 确认没错误 然后 nginx -s reload 重载配置文件

补充:
快捷键 Ctrl z可以暂停一个进程。 比如,vi的时候,可以先退出vi,然后释放命令行出来。
按fg 就可以回到vi窗口里。

安装wordpress

下载: https://cn.wordpress.org/download/

cd /data/wwwroot/blog.jinshui.cc/
wget https://cn.wordpress.org/wordpress-5.0.2-zh_CN.tar.gz

下载完成之后解压:
tar zxvf wordpress-5.0.2-zh_CN.tar.gz

解压完成后,把wordpress目录下所有文件全部(表示所有)移到当前目录下(./)(当前目录是/data/wwwroot/blog.jinshui.cc/)
mv wordpress/
./
yum安装Nginx,Nginx虚拟主机,安装wordpress,安装discuz_第33张图片
删除wordpress目录和wordpress-5.0.2-zh_CN.tar.gz这个包
rm -rf wordpress wordpress-5.0.2-zh_CN.tar.gz

此时去访问我们的博客就可以看到安装页面了
yum安装Nginx,Nginx虚拟主机,安装wordpress,安装discuz_第34张图片
设置数据库
进入到数据库:
mysql -uroot -paminglinux
创建库:create database blog;
创建用户:grant all on blog.* to ‘blog’@‘127.0.0.1’ identified by ‘pbxfuej3LR4r’;
yum安装Nginx,Nginx虚拟主机,安装wordpress,安装discuz_第35张图片
以上实例中创建用户时一定要用127.0.0.1这个IP,由源到源,因为数据库和程序文件都是在本地服务器的,如果数据库是单独配置在其他服务器上则需要远程的数据库地址
退出快捷键:Ctrl+D
mysql -ublog -ppbxfuej3LR4r -h127.0.0.1 登陆到blog这个库
show databases; 看看都有哪些库
yum安装Nginx,Nginx虚拟主机,安装wordpress,安装discuz_第36张图片
现在就可以继续进行安装wordpress
yum安装Nginx,Nginx虚拟主机,安装wordpress,安装discuz_第37张图片
到这里就安装成功了
yum安装Nginx,Nginx虚拟主机,安装wordpress,安装discuz_第38张图片
此时登陆数据库看看
mysql -ublog -ppbxfuej3LR4r -h127.0.0.1
show databases; 看看都有哪些库
切换某个库: use blog;
查询库里面有什么表: show tables;
yum安装Nginx,Nginx虚拟主机,安装wordpress,安装discuz_第39张图片
然后还可以看到刚刚最新生成的文件
yum安装Nginx,Nginx虚拟主机,安装wordpress,安装discuz_第40张图片
问题处理:
在安装wordpress过程中,需要设定网站程序目录的权限,属主设定为php-fpm服务的那个用户
chown -R php-fpm /data/wwwroot/blog.jinshui.cc

补充:
yum install -y expect //为了安装mkpasswd命令,这个命令用来生产随机密码的
如, mkpasswd -s 0 -l 12

安装discuz

discuz官网:http://www.discuz.net/forum.php
yum install -y git 安装git包就可以使用以下的git命令了
git clone https://gitee.com/ComsenzDiscuz/DiscuzX.git 克隆discuz程序
克隆下来后就会有一个DiscuzX目录,discuz程序就是在DiscuzX目录下的upload目录里面
yum安装Nginx,Nginx虚拟主机,安装wordpress,安装discuz_第41张图片
cp -r DiscuzX/upload /data/wwwroot/bbs.jinshui.cc 拷贝DiscuzX/upload目录并且改名成目标目录
在这里插入图片描述
定义虚拟主机(站点bbs.jinshui.cc)配置文件:
1)cd /etc/nginx/conf.d
2)cp blog.jinshui.cc.conf bbs.jinshui.cc.conf
3)修改里面的目录
vi bbs.jinshui.cc.conf
yum安装Nginx,Nginx虚拟主机,安装wordpress,安装discuz_第42张图片
4)nginx -t && nginx -s reload
然后访问bbs.jinshui.cc就到了安装页面了
yum安装Nginx,Nginx虚拟主机,安装wordpress,安装discuz_第43张图片
开始安装:
yum安装Nginx,Nginx虚拟主机,安装wordpress,安装discuz_第44张图片
这些目录需要改可写权限
1)改权限 cd /data/wwwroot/bbs.jinshui.cc && chown -R php-fpm config data uc_server/data uc_client/data
&& 前面的命令执行成功了才会继续执行后面的命令

2)数据库相关操作:
mysql -uroot -paminglinux 进入到数据库
create database bbs; 创建库bbs
grant all on bbs.* to ‘bbs’@127.0.0.1 identified by ‘li60rtvvHAfh’; 创建用户
先退出再连接一下更改成功创建的库,能连接上说明没毛病
yum安装Nginx,Nginx虚拟主机,安装wordpress,安装discuz_第45张图片
3)定义数据库相关的信息
4)完成安装

补充:
1) cp :cp -r 复制目录

2)vi 批量查找替换,一般模式下输入 :1, s / 要 被 替 换 的 字 符 / 替 换 成 的 字 符 / g 如 果 字 符 串 中 含 有 / , 则 需 要 脱 义 , 1 , s/要被替换的字符/替换成的字符/g 如果字符串中含有/,则需要脱义, 1, s///g/1,s/home/123/home/abc/g
还有一种方法:1,$s#home/123#home/abc#g

你可能感兴趣的:(学习笔记)