宝塔面板项目部署踩坑日记

2023年 9月 16日 31.1k 0

1. 服务器地址

  • mysql地址与密码(密码或地址错误会连接不上数据库,直接导致项目启动不了,也关闭不了)
  • 前端访问的地址记得改为上线地址
  • 如果涉及到操作文件(比如上传文件到服务器),文件的目录也要改为服务器上的目录(比如/www/wwwroot)
  • 2. 请求404的问题

  • nginx跨域解决
  • 挂载到服务器的前端项目会默认有一个api前缀

    参考文章:blog.csdn.net/weixin_4320…

    打开前端站点,点击设置,到配置文件加一个这个,proxy_pass:是你搭建好的后端地址

     
        location  ^~/api/
        {
        add_header 'Access-Control-Allow-Origin' '*';
        proxy_pass http://这里写IP地址:3000/;
        }
        
        location  ^~/image/ 
        {
    		root /www/wwwroot/soulmate/soulmateImage/;     #指定图片存放路径    
    	  }
    

    3. 图片上传服务器失败

  • 修改文件权限
    用这个命令也不是所有情况都能解决,可以看看《鸟哥的 Linux 私房菜》 关于权限的那块内容
  • chmod -R 777
    

    4. 图片访问失败

    我后端使用的是资源映射。

    image.png
    访问失败,一般为你的站点没有配置可访问路径

      location  ^~/image/ 
        {
    		root /www/wwwroot/soulmate/soulmateImage/;     #指定图片存放路径    
    	  }
    

    参考文章: blog.csdn.net/qq_48922459…

    5. 刷新页面找不到

    使用的是history模式 由于我们的应用是一个单页的客户端应用

    参考文章: cloud.tencent.com/developer/a…

    6. 面试题

    hash模式

    hash模式 它在内部传递的实际 URL 之前使用了一个哈希字符(#)。由于这部分 URL 从未被发送到服务器,所以它不需要在服务器层面上进行任何特殊处理。不过,它在 SEO 中确实有不好的影响。如果你担心这个问题,可以使用 HTML5 模式。

    history模式

    当使用这种历史模式时,URL 会看起来很 "正常",例如 example.com/user/id。漂亮!

    不过,问题来了。由于我们的应用是一个单页的客户端应用,如果没有适当的服务器配置,用户在浏览器中直接访问 example.com/user/id,就会得… 404 错误。这就尴尬了。

    不用担心:要解决这个问题,你需要做的就是在你的服务器上添加一个简单的回退路由。如果 URL 不匹配任何静态资源,它应提供与你的应用程序中的 index.html 相同的页面。漂亮依旧!

    解决方案:

  • 改为hash模式
  • nginx
  •  location / 
        {
        index /www/wwwroot/dist/index.html;
        try_files $uri $uri/ /index.html;
        }
    

    参考

    cloud.tencent.com/developer/a…

    一定要配置日志!!!

    相关文章

    JavaScript2024新功能:Object.groupBy、正则表达式v标志
    PHP trim 函数对多字节字符的使用和限制
    新函数 json_validate() 、randomizer 类扩展…20 个PHP 8.3 新特性全面解析
    使用HTMX为WordPress增效:如何在不使用复杂框架的情况下增强平台功能
    为React 19做准备:WordPress 6.6用户指南
    如何删除WordPress中的所有评论

    发布评论