我把我的laravel项目clone到了linux在云主机上(个人第一次部署,以前没有经验,第一次使用云主机),在解决了很多问题后,终于显示了前端页面,但没有来自主机mysql查询数据。
我的解决方案:
1.在服务器上写一个小的test.php,里面用的pdo连接mysql,可以正常echo数据出来。可以排除mysql问题本身。
2,故意在env如果数据库信息在文件中配置错误,就会出现laravel报错页面,提醒我SQLSTATE[HY000] [1049] Unknown database,数据库名称错误。因此,问题应该锁定在项目中。
3.不知道是不是Vue我不知道整个前端的问题laravel项目放在云主机后前端需要做什么?当我无法运行时,它就被执行了npm run watch,还没解决的应该是一个router什么样的错误,但网上说好像没关系。然后我不放心,都删了。 node_modules 什么 重新npm install但是还是没有数据。。
4.将项目复制到云主机上没有变化,项目配置的端口也发生了变化。env文件内容
APP_NAME=Laravel
APP_ENV=local
APP_KEY=base64:jL6pQJ6ZONO7Kfwd1D5/MhDSIy1XymnVxoanwZ1w150=
APP_DEBUG=true
APP_URL=http://localhost
LOG_CHANNEL=stack
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=online
DB_USERNAME=root
DB_PASSWORD=****(已改过)
BROADCAST_DRIVER=log
CACHE_DRIVER=file
QUEUE_CONNECTION=sync
SESSION_DRIVER=file
SESSION_LIFETIME=120
REDIS_HOST=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6379
MAIL_DRIVER=smtp
MAIL_HOST=smtp.mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null
PUSHER_APP_ID=
PUSHER_APP_KEY=
PUSHER_APP_SECRET=
PUSHER_APP_CLUSTER=mt1
MIX_PUSHER_APP_KEY="${PUSHER_APP_KEY}"
MIX_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}"
个人感觉配置没问题。
以防万一我再贴我。 前端请求axios的代码!
getFormList() {
axios
.get('/getAll', { params:{authorId: 1}})
.then(result => {
this.formList = result.data
this.$message.success(表单列表加载成功
})
.catch(err => {
this.$message.error(数据加载失败,请刷新重试)
})
},
以防万一,在我的云主机上发布页面请求header。。
求大佬过目执教!