1. 检查Nginx配置文件
首先,需要检查Nginx的配置文件,通常Nginx的配置文件位于/etc/nginx/nginx.conf或者/etc/nginx/conf.d/目录下的相关配置文件。
步骤1:查看默认站点配置
假设你使用的是默认的站点配置,一般在/etc/nginx/conf.d/default.conf(不同系统可能路径略有不同),打开该文件查看配置内容,例如:
server {
listen 80;
server_name localhost;
location / {
root /usr/share/nginx/html;
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
}
这里的root指令指定了Nginx默认的网页根目录是/usr/share/nginx/html,而你的hexo博客文件应该放置在正确的目录下。
步骤2:修改配置文件指向hexo博客目录
如果你的hexo博客生成的文件在/your/hexo/blog/public目录下(假设hexo博客的生成目录是这个),那么需要修改Nginx配置文件中的root指令为该目录:
server {
listen 80;
server_name localhost;
location / {
root /your/hexo/blog/public; # 修改为hexo博客的生成目录
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
}
2. 重新加载Nginx配置
修改完配置文件后,需要重新加载Nginx的配置,使用以下命令:
sudo nginx -s reload
如果出现错误,比如配置文件语法错误,可以使用sudo nginx -t来检查配置文件语法是否正确,示例:
sudo nginx -t
如果有语法错误会提示具体错误位置,根据提示修正配置文件。
3. 检查hexo博客生成是否正确
确保hexo博客已经正确生成,在hexo博客的根目录下执行hexo generate命令来生成静态文件,示例:
cd /your/hexo/blog
hexo generate
生成成功后,文件会输出到你在_config.yml中配置的public目录下(默认是public目录)。
4. 检查文件权限
确保Nginx进程有权限读取hexo博客生成的文件,一般Nginx进程以nginx用户运行,可以将hexo博客生成的文件所在目录的权限适当放开,比如:
sudo chmod -R 755 /your/hexo/blog/public
sudo chown -R nginx:nginx /your/hexo/blog/public
这里-R表示递归设置权限,将/your/hexo/blog/public目录及其下文件的所有者和所属组设置为nginx用户和组,权限设置为755(用户可读可写可执行,组和其他用户可读可执行)。
通过以上步骤,一般可以解决Nginx作为HTTP服务器出现404 Not Found的问题。如果还是存在问题,可以进一步查看Nginx的错误日志,Nginx的错误日志默认一般在/var/log/nginx/error.log,通过查看错误日志来获取更详细的错误信息,以便进一步排查问题。