一、基于域名访问
查看没有空行,没有注释的文件内容
[root@web ~]# grep -Ev "#|^$" /usr/local/nginx/conf/nginx.conf
[root@web ~]# cp /usr/local/nginx/conf/nginx.conf /usr/local/nginx/conf/nginx.conf.bak
[root@web ~]# grep -Ev "#|^$" /usr/local/nginx/conf/nginx.conf.bak > /usr/local/nginx/conf/nginx.conf
[root@web ~]# vim /usr/local/nginx/conf/nginx.conf
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
upstream a_name{ 这里是上一期创建的一个代理服务组
server 192.168.4.33:80;
server 192.168.4.40:80;
}
server{
listen 80; 设置监听端口
server_name www.zz.com; 设置域名
root /zz; 设置资源目录
location / { 设置路由location模块
index index.html;
}
}
server {
listen 80;
server_name localhost;
location /status { 这四行是上一期设置的监听日志
stub_status on;
access_log off;
}
location / {
proxy_pass http://a_name; 这里是上一期的设置方便找到代理组
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}
[root@web ~]# mkdir /zz 因为在配置文档中写的是zz目录,所有我们创建一个zz目录
[root@web ~]# echo "i am zz" > /zz/index.html 随便写入一点什么,方便后期分辨
[root@web ~]# /usr/local/nginx/sbin/nginx -s reload 重载
[root@web ~]# vim /etc/hosts
[root@web ~]# curl www.zz.com
i am zz
由于有上一期写的的网页监控所以,我们可以看一下监控效果
二、多页面访问
一个服务器上同时部署多个项目,为了方便维护,可以将server模块单独抽 离出来创建conf文件,然后在主配置文件中使用include添加外部配置,这 样让操作更加模块化。
1.步骤:
(1) 在nginx目录下创建新的目录conf.d
(2)在conf.d目录中添加zz.conf文件
(3) 将在nginx.conf文件中创建的server复制到 zz.conf文件中
(4) 删除nginx.conf中原有的自定义server模块
(5) 在nginx.conf添加include,这里也可以写成相对路径,可以自由选择include /usr/local/nginx/conf.d/*.conf
(6) 重载nginx配置文件,测试
2、实行
2.2.1查看、创建、添加、复制
先查看这里的部分是不是我们需要的东西,是我们需要的东西就复制给新建的conf文件
[root@web ~]# sed -n '14,21p' /usr/local/nginx/conf/nginx.conf
server{
listen 80;
server_name www.zz.com;
root /zz;
location / {
index index.html;
}
}
[root@web ~]# sed -n '14,21p' /usr/local/nginx/conf/nginx.conf > /usr/local/nginx/conf.d/zz.conf
[root@web ~]# cat /usr/local/nginx/conf.d/zz.conf
server{
listen 80;
server_name www.zz.com;
root /zz;
location / {
index index.html;
}
}
2.2.2移除这部分的模块:
[root@web ~]# sed -i '14,21d' /usr/local/nginx/conf/nginx.conf
[root@web ~]# cat /usr/local/nginx/conf/nginx.conf
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
upstream a_name{
server 192.168.4.33:80;
server 192.168.4.40:80;
}
server {
listen 80;
server_name localhost;
location /status {
stub_status on;
access_log off;
}
location / {
proxy_pass http://a_name;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}
2.2.3写入移除模块的匹配位置,便于便于寻找
[root@web ~]# vim /usr/local/nginx/conf/nginx.conf
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
upstream a_name{
server 192.168.4.33:80;
server 192.168.4.40:80;
}
include ../conf.d/*.conf;
server {
listen 80;
server_name localhost;
location /status {
stub_status on;
access_log off;
}
location / {
proxy_pass http://a_name;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}
[root@web ~]# /usr/local/nginx/sbin/nginx -s reload 重新加载文件配置
三、基于IP访问
[root@web ~]# ifconfig ens33:1 192.168.4.200
[root@web ~]# ifconfig
四、基于端口访问
把端口配置改成不一样的,但是IP改为一致的。
[root@web ~]# vim /usr/local/nginx/conf.d/zz.conf
[root@web ~]# vim /usr/local/nginx/conf/nginx.conf
[root@web ~]# /usr/local/nginx/sbin/nginx -s reload
五、上线一个静态的前端系统
[root@web ~]# yum -y install nodejs
[root@web ~]# node -v
v16.20.2
[root@web ~]# yum -y install npm
[root@web ~]# npm -v
8.19.4
[root@web ~]# npm config set registry https://registry.npmmirror.com
[root@web ~]# npm install @vue/cli
[root@web ~]# ls -l /usr/local/node_modules/.bin/vue
lrwxrwxrwx. 1 root root 22 7月 31 14:42 /usr/local/node_modules/.bin/vue -> ../@vue/cli/bin/vue.js
[root@web ~]# /usr/local/node_modules/.bin/vue -V
@vue/cli 5.0.8
[root@web elem_web]# /usr/local/node_modules/.bin/vue create elem_web
[root@web elem_web]# cd elem_web/
[root@web elem_web]# npm run server&
[root@web elem_web]# yum -y install samba
[root@web elem_web]# vim /etc/samba/smb.conf
[root@web elem_web]# useradd vueediter
[root@web elem_web]# smbpasswd -a vueediter
New SMB password:
Retype new SMB password:
Added user vueediter.
为用户在文件夹中添加读写权限
[root@web elem_web]# setfacl -m u:vueediter:rwx /root/elem_web/
启动服务
[root@web elem_web]# systemctl start nmb.service
[root@web elem_web]# systemctl start smb.service
[root@web elem_web]# mkdir public/vido
[root@web elem_web]# mkdir public/music
[root@web elem_web]# mkdir public/img
[root@web elem_web]# tree public/
public/
├── favicon.ico
├── img
├── index.html
├── music
└── vido
克隆一台虚拟机
[root@ntp ~]# yum -y install nfs-utils.x86_64
[root@ntp ~]# yum -y install rpcbind
[root@ntp ~]# vim /etc/exports
/static/img *(rw,sync)
[root@ntp ~]# mkdir -p /static/img
[root@ntp ~]# systemctl start rpcbind.service
[root@ntp ~]# systemctl start nfs
[root@ntp ~]# netstat -lnput | grep rpc 查看111端口是否开启
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 1971/rpcbind
回到elem_web
[root@web elem_web]# yum -y install nfs-utils
[root@web elem_web]# systemctl start rpcbind
[root@web elem_web]# systemctl start nfs
[root@web elem_web]# mount -t nfs 192.168.4.40:/static/img public/img
回到ntp
[root@ntp ~]# cd /static/img/
[root@ntp img]# rz -E
rz waiting to receive.
[root@ntp img]# ls
a.png
回到elem_web
[root@web elem_web]# ls public/img/
a.png
[root@web elem_web]# vim src/views/HomeView.vue
[root@web elem_web]# npm run serve&