最近需要把项目部署到Linux服务器上面,自己就利用虚拟机安装了Linux,玩了下,下面就将自己遇到的问题记录下来,方便以后学习使用。我这里利用集成环境XAMPP来搭建的。
1.软件安装
- 首先下载Linux版本的XAMPP软件安装,安装的默认位置在/opt/lampp目录下面
- 安装完成之后通过/opt/lampp/lampp start启动服务。访问地址,如下图表示安装完成。就是这么简单
- 上面的配置默认根目录是在/opt/lampp/htdocs下面如果需要自定义网站目录就需要开启httpd-vhosts.conf配置了
在/opt/lampp/etc下面找到httpd.conf找到下面一行,去掉“#”号开启配置
然后在/opt/lampp/etc/extra下面找到httpd-vhosts.conf添加配置信息
然后重启Apache服务,注意:我这里是虚拟机安装的linux需要在本机hosts里面指向访问地址到虚拟机
10.10.0.112 www.linuxshop.com
最后将项目拷贝到配置的目录下面就可以访问了,如果出现Access forbihdden权限问题,请修改你自己选定的文件夹的权限。
chmod -R 777 文件夹目录 // 简单粗暴
2.主要遇到的问题
- 访问phpmyadmin出现权限问题
原因以及解决办法:安装的MySQL默认是只允许本地访问的,如果需要利用XAMPP自带的phpmyadmin在外网访问数据库,最好是修改配置文件httpd-xampp.conf指定固定ip访问,然后重启Apache服务。该配置文件的路径是:/opt/lampp/etc/extra/httpd-xampp.conf,我这里指定10.10.0.254可以访问,但是不建议这么做。
- 如果需要数据库客户端软件访问数据库同样会有权限的问题
解决办法:新增一个具有权限(指定ip)的账户来实现。
利用默认账户进入数据库
搜索默认的账户信息
添加具有外网访问权限的账号
GRANT ALL PRIVILEGES ON *.* TO 'root_myuser'@'10.10.0.254' IDENTIFIED BY '123456';
flush privileges;
再次查看账户信息
最后通过新增的账户就可以访问了
- Access denied 问题
在配置好网站之后,并且能够访问,但是在操作数据库出现如下问题的时候,依然是数据库权限问题,参考上面的方法新增一个具有本地访问权限的账户即可。
Access denied for user 'root'@'localhost' (using password: NO)
Access denied for user 'root'@'localhost' (using password: YES)
解决办法:参考上面新增外网访问数据库的方法
GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY '123456';
flush privileges;