Nginx上部署静态页面小结

最近要在VPS上解析域名然后部署NGinx作为个人站点,忙忙活活了一整天,虽说是很简单的功能,但是也遇到了很多坑。
在这里把他们写出了以作参考。
1、在Linux上安装Nginx,以Debian为例

apt-get install nginx, 然后系统会自动安装Nginx相关文件,包括Nginx-full,Nginx-common

2、Nginx安装完之后,ls -alh会看到nginx被放在/etc/nginx目录下,或者是用whereis nginx查看

3、安装完Nginx,服务应该是已默认启动,可以通过命令查看默认80端口是否被Nginx服务占用
可以用lsof -i:80 查看,需要先安装lsof,apt-get install lsof;这样如果发现80端口被占用,可以调用命令、
kill -9 PID杀死进程
或者是netstat -nat|grep -i “80”

4、这时候可以直接访问主机的ip,应该会看到nginx的欢迎默认界面

5、如果要将静态的网址挂到Nginx下,,需要修改nginx.conf

cd /etc/nginx
nano nginx.conv
然后在http{}里添加如下行
server {
listen: 80; 监听端口
server_name ; 是通配符,匹配所有域名,也可以输入自己的域名
root /WillUBeMyValentine; 这里是你的静态文件所在的路径

    location / {
                index Love.html; 静态文件的名称
    }
   }

Nginx会首先加载nginx.conf里的配置,然后是sites-enabled的default文件,
可以看到http{}下的配置加载语句:
include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*;

修改完配置后需要重启Nginx,Nginx -s reload,这被称为平滑重启,可以实现自动加载新配置
Nginx启动选项:Nginx/service Nginx start/nginx -s reload

6、改为你自己的配置后,再加上域名解析完成,现在应该可以通过访问个人域名来加载静态文件了

如果还是不成功,我就一个人的经验来说下昨天遇到的各种错误和解决思路

首先可以去查看80端口是否被Nginx服务占用,然后杀死进程,重新启动Nginx

二是检查是否开启了防火墙,ufw status查看

如果以上都没问题,则有可能是目录权限的问题,在nginx.conf里头最上面加入 user root;给它赋予root权限

如果以上还不能解决,就先保存下conf文件,然后卸载Nginx再重装
1、卸载:apt-get remove nginx
apt-get purge nginx
用whereis nginx确实没有了任何文件
2、安装:apt-get update
apt-get upgrade 先更新下apt-get,确保任何可能都被考虑到
apt-get install nginx
我在安装的时候遇到了80端口被占用的提示,反复重新安装都没用,提示Nginx-full无法安装
最后用kill -9 杀掉所有80进程,重复上面的步骤,最后完成

安装完Nginx,先查看一下默认主页可不可以访问,如果可以的话, 再去尝试Nginx配置文件

这样启动服务后,Nginx只是在当前运行,如果你想要保持在后台运行,可以添加自启动sh
apt-get install vim
vi startup.sh
添加如下内容 :service nginx start(service mysql start)
然后保存退出,给脚本执行权限:
chmod +x startup.sh

大功告成!

你可能感兴趣的:(nginx,html)