各类基于虚拟主机的应用及上线商城系统

一、基于域名访问

查看没有空行,没有注释的文件内容
[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                                

d4b338e25fec48fdad2391f1815039ee.png

[root@web ~]# curl www.zz.com
i am zz

935bc101276d48b6afd854532675ec66.png

由于有上一期写的的网页监控所以,我们可以看一下监控效果

15348a76ae864f03b3fcb2aa8981a99a.png

二、多页面访问

一个服务器上同时部署多个项目,为了方便维护,可以将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                    重新加载文件配置

326e6b6525ea44da82e0a307e275c1e5.png

三、基于IP访问

[root@web ~]# ifconfig ens33:1 192.168.4.200
[root@web ~]# ifconfig

af5890c1c2fd4b55b32d121c40363462.png

0fc66b91f82746f38fdb0b75190dc92f.png

四、基于端口访问
 

把端口配置改成不一样的,但是IP改为一致的。

[root@web ~]# vim /usr/local/nginx/conf.d/zz.conf 
 

6ada3c834c22402b8a759d1911f1a72f.png

[root@web ~]# vim /usr/local/nginx/conf/nginx.conf

e0d782abc0114561b59831e34628512f.png
[root@web ~]# /usr/local/nginx/sbin/nginx -s reload5d3bbc9ce0fd498486a2fb7c54d1efab.png436889328779475283115b98643dccd1.png

五、上线一个静态的前端系统
[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

ff31ae3513274b4c857a905dc20d3db1.png
[root@web elem_web]# npm run serve&

74d913fd3e444051abc9691e7af7e9c3.png

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值