关于ubuntu, linux服务器搭建静态博客网站的常用命令
September 8, 2022
在ubuntu, linux, macos等系统中开发是非常爽的,然而它的桌面生态却不像Windows系统那样强大。
在服务器系统中,ubuntu和linux是很常见的,这时我们面对的就是一个黑漆漆的Terminal命令行,一个幽灵般的光标在那里闪呀闪的,好像在说:你过来呀!
对于不熟悉Linux命令的人来说,真想换成别的系统,然而云服务器可选择系统版本太低,不支持比较新的运行时,无奈只能Google、baidu,硬着头皮啃。
这里分享一些搭建环境时的常用命令,供大家参考。
以腾讯轻量云服务器为例,免费试用版,有兴趣的同学可以拿来玩一玩,这里是腾讯云申请链接[申请链接]。
安装依赖
当我登录到腾讯云的ubuntu服务器的时候,看到的就是一个终端命令行运行界面,而我现在要做的就是为我的服务安装nodejs18、Nginx,在macOS里安装会用到Homebrew,它是Mac平台下的软件包管理工具,可以安装、卸载、更新、搜索、查看相关软件,而在uuntu系统里,我将用到的是apt-get命令
// MacOS
brew install node
// ubantu
sudo apt-get install -y nodejs
安装成功后查看NodeJS版本
node -v
>> v18.19.1
npm -v
>> 9.2.0
一般对于静态web服务器,Nginx代理分发性能要比Tomcat好,所以我准备安装nginx作为静态博客网站的代理
sudo apt-get install ngnix
// 检查nginx版本
nginx -v
// nginx启停
sudo systemctl start/stop nginx
配置nginx
查看nginx配置文件
vi /etc/nginx/nginx.config
可以看到
user www-data
worker_processed auto
pid /run/nginx.pid
error_log /var/log/nginx/error.log
include /etc/nginx/modules-enabled/*.conf
events {
worker_connections 768;
# multi_accept on
}
http{
....
}
修改权限
www-data通常会是php, apache, nginx 等服务的用户,然而它的权限没有root高,当我更改web服务的根目录之后,我的首页就不能访问了,403或者404。
通过查nginx log得知,是permission deny,用户权限不够,不能够访问我的静态资源文件,我需要给www-data赋权
这时就用到了chmod命令,赋予用户文件、文件夹读写和执行的权力,在此之前先查阅一下文件系统的权限分配
ls -l
你会发现输出的文件目录里有很多drwxrwxr-x这样的东西,其中d代表目录,-代表常规文件,然后出去第一个字符,从第二个开始,每三个为一组,依次表示所有者权限,组权限,其他用户权限,rwx分别代表可读、可写、可执行的权限,-代表无权限
要赋予用户权限,看是否需要写的权限,如果不需要,为了安全,可以赋予读和执行权限
sudo chmod -R 755 /path/to/www
如果需要写的权限
sudo chmod -R 777 /path/to/www
-R是递归的执行当前目录和所有的子文件和子文件夹,还有比如常用的cp, rm,ls命令也可以用到-R
现在权限已经分配出去,可以通过网址、IP正常的访问博客网站了。