第一篇 在Ubuntu部署Nginx

579 阅读4分钟

「可以的话,想看看更好的自己」

VMware虚拟机

因为想学习部署东西,自己原本VM虚拟机是有Centos7的,但是年头久远,啥知识都忘了,决定重新部署一个Ubuntu系统的,为方便操作(小白作者😁),还是选择图形化的。关于docker之类的还不会,暂时就会使用VMware。

下载Ubuntu镜像

直接去阿里巴巴开源镜像站下载:阿里巴巴开源镜像站

1.点击os镜像

2.选择需要的iso

这里我选择的是Ubuntu-20.04.5-desktop-amd64

创建新的虚拟机

这里根据步骤一步步执行,这里有个点需要注意,有时候界面显示不完全,下面的一些退出、后退、继续按钮不显示,点击不了,可以通过Tab键切换过去,再Enter。

跟着向导一直安装好,安装时我是自己名字做用户名的,而因为ubuntu中默认是没有root用户,需要手动创建,并设置密码:sudo passwd root

天坑一

Ubuntu下用户登录界面默认是没有root权限登录的,这导致我在个人用户可以通过su 切换root下,但是登录不可以root登录,包括图形化root登录、ssh/ftp,以下设置可以在用户界面添加root权限登录。 命令行root用户下: 先安装一下vim便于编辑:apt install vim

  1. 编辑配置vim /usr/share/lightdm/lightdm.conf.d/50-ubuntu.conf 添加greeter-show-manual-login=true到最后一行
  2. 进入/etc/pam.d文件夹下,修改gdm-autologin和gdm-passwd文件信息 gdm-autologin文件 -- 注释(#)掉 auth required pam_success_if.so user!=root quiet_success gdm-passwd文件 -- 注释(#)掉 auth required pam_success_if.so user!=root quiet_success
  3. 修改profile vim /root/.profile 找到 mesg n,将其替换成 tty -s && mesg n
  4. 重启 reboot

天坑二

图形化界面可以登录root了,但是ssh还是连不上。 依旧root用户下:

  1. 修改此文件vim /etc/ssh/sshd_config 注释(#)掉 PermitRootLogin prohibit-password 意思为允许root登录,但是禁止root用密码登录
  2. 注释完或者已经注释了就在下面添加一行新的: PermitRootLogin yes 意思为允许root登录,设为yes

好了,又是在CSDN里捡金子的一天!😞

修改apt国内源

考虑到Ubuntu的默认源在国外速度较慢,使用默认软件安装工具apt安装时速度嘎嘎慢,可以修改为国内源。方法有两种,图形化的直接打开“软件和更新”修改(方便快捷,下面链接有具体步骤),命令行的参考如下文章: Ubuntu更改国内源(apt更换源)

SSH

个人喜欢用xshell远程使用,需要开启ssh服务。(同时搭配xftp)

安装更新ssh服务器 apt install openssh-server

开启ssh服务 service ssh start

设置自动开启 systemctl enable ssh

关闭自动开启 systemctl disable ssh

检查ssh状态 systemctl status ssh

关于ip地址想使用ifconfig查看,提示我apt install net-tools,照做。

Nginx

Nginx是一个高性能的HTTP和反向代理web服务器,属于消息队列中间件,总会被周边人提起,关于它的反向代理、负载均衡啥的,我都~不了解,以后会啃对应知识的。 初衷是想在Ubuntu部署一个Django+Nginx,所以还是需要搞定它。

1.下载

直接去官网下载好压缩包,传送门: nginx下载 我选的是1.18.0版本,然后直接通过xftp传过去,选择的目录是 /usr/local/ 解压:tar -zxvf nginx-1.18.0.tar.gz

2.依赖库

apt install openssl libssl-dev 
apt install libpcre3 libpcre3-dev 
apt install zlib1g-dev
apt install gcc make

安装编译 切到解压后文件夹下,执行./configure,如果需要安装到指定目录,则./configure -prefix=/opt 接着执行make && make install命令进行软件编译安装。 在 nginx-1.18.0 同级文件夹下出现 nginx 文件夹,可在此文件夹下的 conf 文件夹下修改nginx.conf配置,关于nginx配置的相关文章: Nginx配置使用详解

3.nginx使用

进入sbin目录(/usr/local/nginx/sbin)

启动:./nginx
停止:./nginx -s stop
重新加载:./nginx -s reload
检查配置文件语法是否正确:./nginx -t

为方便全局环境使用命令,可以建立软链接,让nginx指令生效:ln -s /usr/local/nginx/sbin/nginx /usr/sbin (看别的文章说是/usr/bin,但是我这里的报错提示就是/usr/sbin)。修改配置文件(/usr/local/nginx/conf/nginx.conf),将server_name后参数修改为ubuntu的ip,方便虚拟机外访问。

   server {
        listen       80;
        # server_name  localhost;
        server_name 本机IP;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

ninx生效:




今天就到此为止,再看就不礼貌了。

个人觉得,进度是挺慢的,但至少做了下去,并且,似乎没那么枯燥了。