服务端ubuntu,nginx学习过程

相关操作指南,查看

《服务系统ubantu,nginx,vim,文件等操作流程》

Linux 常用命令学习(ubuntu系统)


1. 安装nginx

apt-get 和 apt 基本同理
sudo su root
apt-get update
apt-get install nginx
nginx -v
// nginx version: nginx/1.18.0 (Ubuntu)

nginx启动:

service nginx start

ubuntu查看本机IP:

在网页重输入ip地址,即可看到nginx的欢迎页面。至此nginx安装成功。。。。

ip a
ip address
ip addr show

nginx操作:

nginx -s stop // 快速停止nginx
nginx -s quit // 完整有序的停止nginx
nginx -s reopen // 重新打开日志文件
nginx -s reload // 修改配置后重新加载生效

有时想知道nigix是否在正常运行,需要用linux命令查看nginx运行情况。

ps -A | grep nginx

如果返回结果的话,说明有nginx在运行,服务已经启动。

查看nginx配置文件

cat /etc/nginx/nginx.conf

默认资源目录

cd /var/www/html

查看nginx配置文件是否出错

nginx -t 

保存后,重启nginx

sudo service nginx restart // 重启服务

修改nginx配置文件

vim /etc/nginx/nginx.conf

一般情况在在http下面添加或者修改server就可以了

server {
    # 监听访问的端口
    listen 80;
    # 监听访问的域名/IP
    server_name localhost;
    # 默认范围资源路径
    location / {
        # 访问的静态资源目录
        root   /var/www/html/;
        # 默认资源
        try_files $uri $uri/ /index.html;
        # try_files $uri $uri/ =404;
    }
    # 代理访问
    location /api {
        # 移除代理路径识别
        rewrite /api/(.*) /$1 break;
        # 代理访问域名/IP:端口
        proxy_pass http://localhost/;
    } 
  location /smallbore {
        # 判断是否移动设备
        # 重定向域名为 http://localhost/m/smallbore
        if ($http_user_agent ~* "Mobile") {
            rewrite (.*) http://localhost/m$1 last;
        }
        # 特指参数进行处理
        if ($query_string ~* "id=123456") {
            rewrite  ^/smallbore/(.*)/product/detail /smallbore/$1/product/detail?id=654321  permanent;
        }
        # 使用变量
        # set $if_mobile false;
        rewrite /smallbore/(.*) /$1 break;
        proxy_pass http://localhost/pc;
    }
    # 特殊代理
    location /hc {
        add_header  Access-Control-Max-Age  36000;
        add_header  Access-Control-Allow-Headers 'Origin, X-Requested-With, Content-Type, Accept,Authorization,authorization';
        add_header  Access-Control-Allow-Credentials true;
        include /etc/nginx/conf.d/common/proxy-default.conf;
        proxy_cookie_domain smallbore.com m.smallbore.com;
        proxy_cookie_path / /;
        proxy_pass http://localhost/hc;
    }
}

重启后,刷新页面,前端部署完成。。。

2. 链接服务, 开启ssh服务

先检查SSH服务有没有开启, 如果没有反应或者其他结果,再试着开启SSH服务

sudo ps -e | grep ssh

启动服务

sudo /etc/init.d/ssh start

启动异常,安装SSH服务

sudo apt-get  install openssh-server

等待安装结束即可。然后再次查看服务有没有启动。如果没有反应或者其他结果,再试着开启SSH服务。

部分ssh服务操作命令

sudo service ssh status // 查看服务状态
sudo service ssh stop  // 关闭服务
sudo service ssh restart  // 重启服务

ssh smallbore@ip 登录远程

最后是使用exit命令尝试退出,这里的效果和用Logout命令退出是一样的,当然exit命令比较短,输入也相对方便一些。以上就是ssh退出登录的方法

无法登录时查看 ssh配置文件,设置 PasswordAuthentication yes

 vi /etc/ssh/sshd_config

PasswordAuthentication yes

root依旧无法登录

找到PermitRootLogin 修改为PermitRootLogin yes

退出登录

1. ~. (输入~后不会显示内容,随后输入.即可退出)
2. logout
3. exit

 

上传文件:

 scp myexpress.zip root@ip:~/myexpress.zip

下载文件:

scp root@ip:~/myexpress.zip myexpress.zip

 上传目录 scp -r xxx;

 2. linux命令基础

命令行提示符介绍

[root@www ~]# [zhangsan@www ~]$

  • #:使用超级用户root登录后的命令行结尾提示符
  • $:使用普通用户登录后的命令行结尾提示符
  • @前面的字符:代表当前登录的用户,可使用whoami查询
  • @后面的字符:代表主机名,可使用hostname查询
  • ~的位置:表示窗口当前用户所在的路径,可使用pwd命令查询

常用快捷键

 

快捷键

功能说明

tab

补全命令或者路径

ctrl + r

搜索命令行使用过的历史命令记录

ctrl + g

从执行ctrl + r命令模式中退出

ctrl + a

光标移动到行首

ctrl + e

光标移动到行尾

ctrl + h

删除光标前一个字符

ctrl + d

删除光标后的一个字符,若命令行无字符,则会退出当前shell命令行

ctrl + u

剪切(删除)光标处到行首的字符

ctrl + k

剪切(删除)光标处到行尾的字符

ctrl + y

粘贴以上两个命令剪切的内容

ctrl + insert

复制命令行内容

shift + insert

粘贴命令行内容

ctrl + l

清除屏幕所有内容

ctrl + s

锁定终端,使之无法输入内容

ctrl + q

解锁锁定的状态

pwd:显示当前所在位置的信息

cd:切换目录

option

说明

-P

如果切换的目标目录是一个软连接,则会直接切换到软连接指向的真正的物理目标目录,不常用

-L

功能与-P相反,如果切换的目标目录是一个软连接,则直接切换到软连接所在的目录,不常用

-

若只使用“-”选项,则将会从当前目录切换到当前用户的上一次所在的目录路径 *

~

若只使用“~”选项,则将会从当前目录切换到系统环境变量“HOME”对应值的目录路径,即当前用户的家目录所在的路径 * 

..

若只使用“..”选项,则将会从当前目录切换到当前目录的上一级目录所在的路径 *

mkdir:创建目录

touch:创建文件或更改文件时间戳

ls:显示目录下内容及属性信息

option

说明

-l

使用长格式列出文件及目录信息 *

-s

显示目录下的所有文件,包括隐藏文件 *

-t

根据最后的修改时间进行排序,默认是以文件名进行排序的 *

-r

以相反顺序排序 *

-d

当遇到目录是,列出目录本身而非目录内的文件,并且不跟随符号链接 *

-h

以人类可读的信息显示文件或目录的大小 *

-S

根据文件大小进行排序

-R

递归列出所有子目录

cp:复制文件或目录

-r

递归复制目录,即复制目录下的所有层级的子目录及文件 *

mv:移动或重命名文件

option

说明

-f

若目标文件已存在,则不会询问而是直接覆盖

-i

若目标文件已存在,则会询问是否覆盖

-n

不覆盖已经存在的文件

rm:删除文件或目录

option

说明

-f

强制删除,忽略不存在的文件,不提示确认 *

-i

在删除前需要确认

-r

递归删除目录及其内容 *

vi/vim:纯文本编辑器

vi是Linux命令行界面下的重要文字编辑器。vim是vi命令的增强版,例如,高亮显示代码、自动缩进等

【vim的三种模式】

(1)普通模式

用vim命令打开一个文件后,默认的状态就是普通模式。在这个模式中,不能进行编辑输入操作,但可以按“上下左右”键来移动光标,同时还可以执行一些操作命令进行如删除、复制、粘贴等工作

(2)编辑模式

在普通模式下不能进行编辑输入操作,只有按下“i,I,o,O,a,A,r,R,s,S”(其中“i”最为常用)等字母进入编辑模式后才可以执行录入文字等编辑操作。确定文件是否处于编辑模式状态有一个重要的特征,那就是在窗口的左下角要有插入的标记“--INSERT--”或“--插入--”

(3)命令模式

在普通模式下,输入“:”或“/”或“?”时,光标会自动定位在那一行,在这个模式中,可以执行保存、退出、搜索、替换、显示行号等相关操作

option

说明

普通模式:移动光标的操作

G或(shift+g)

将光标移动到文件的最后一行

gg

将光标移动到文件的第一行

0

将光标从所在位置移动到当前行的开头

$

将光标从所在位置移动到当前行的结尾

n<Enter>

n为数字,<Enter>为回车键,将光标从当前位置向下移动n行

ngg

n为数字,移动到文件的第n行,如11gg可移动到第11行

H

光标移动到当前窗口最上方的那一行

M

光标移动到当前窗口中间的那一行

L

光标移动到当前窗口最下方的那一行

普通模式:搜索与替换操作

/hello

从光标位置开始,向下寻找名为hello的字符串

?hello

从光标位置开始,向上寻找名为hello的字符串

普通模式:复制、粘贴、删除等操作

yy

复制光标所在的当前行

nyy

n为数字,复制光标开始向下的共n行

p/P

p将已复制的数据粘贴到光标的下一行,P则为粘贴到光标的上一行

dd

删除(剪切)光标所在的当前行

ndd

n为数字,删除从光标开始向下共n行

u

恢复(回滚)前一个执行过的操作

x/X

x为向后删除字符,X为向前删除字符

dlG

删除当前行至第一行

dG

删除当前行至最后一行

d0

删除当前光标文本至行首

d$

删除当前光标文本至行尾

进入编辑模式命令

i

在当前光标所在处插入文字

a

在当前光标所在处的下一个字符处插入文字

I

在当前所在行的行首的第一个非空格符处开始插入文字

A

在当前所在行的行尾的最后一个字符处开始插入文字

Esc

退出编辑模式,回到命令模式中

命令行模式

 

:wq

退出并保存

:wq!

退出并强制保存

:q!

强制退出,不保存

:set nu

显示行号

:set nonu

取消行号

 

echo:显示输出文本内容

cat:合并文件或查看文件内容

more:分页显示文件内容

find:查找目录下的文件

参数选项

说明

path

命令所查找的目录路径,如用“.”来表示当前目录,用“/”来表示系统根目录 *

options模块

-depth

从指定目录下最深层的子目录开始查找

-maxdepth levels

查找的最大目录级数,levels为自然数

tests模块

-mtime [-n|n|+n]

按照文件的修改时间来查找文件 *

  • -n 文件更改时间距现在n天以内
  • n   文件更改时间距现在n天以前
  • +n 距离现在第n天 

-atime [-n|n|+n]

按照文件的访问时间来查找文件,单位是天

-amin

按照文件的访问时间来查找文件,单位是分钟

-mmin

按照文件的修改时间来查找文件,单位是分钟

-group

按照文件所属的组来查找文件

-name

按照文件名查找文件,只支持“*”、“?”、“[]”等特殊通配符 *

-regex

接正则表达式

-type

查找某一类型的文件 *

actions模块

-delete

将查找出的文件删除

!

取反 *

 

tar:打包备份

zip:打包和压缩文件

unzip:解压zip文件

ps:查看进程

kill:终止进程

ifconfig:配置或显示网络接口信息

ping:测试主机之间网络的连通性

telnet:远程登录主机

ssh:安全地远程登录主机

wget:命令行下载工具

curl:命令行文件传输工具

host:域名查询工具

nslookup:域名查询工具

 

posted @ 2021-09-23 18:12  smallbore  阅读(74)  评论(0编辑  收藏  举报
回顶部