Ubuntu20.04安装xampp 8部署php html网页与mysql数据库

阿里云服务器安装xampp部署网站

1. 前言

我在自己Windows上搭建了xampp,并调试了前后端,就差把网页部署到服务器上了,服务器选择了阿里的。然后出错了,这里分享下从零到1经验。

2. 下载xampp for linux

地址:https://www.apachefriends.org/download.html
我下载的是
在这里插入图片描述
这里看你怎么弄了,可以本地下载然后传到服务器,也可以wget直接下载。

3. 安装xampp

因为服务器没有图形界面,直接用终端装:

chmod 777 *.run
chmod a+x *.run

然后安装

sudo *.run

直接yes,enter,默认安装路径是/opt/lampp
这里要把/opt文件夹的可读写模式打开,否则不能启动mysql:

sudo chmod 777 /opt
/opt/lampp/lampp restart

然后再查看下是否都在running:

/opt/lampp/lampp status
Version: XAMPP for Linux 8.0.2-0
Apache is running.
MySQL is running.
ProFTPD is running.

这里默认是直接开启服务的,各种文本说明请见这个人的blog:https://blog.csdn.net/zhanghao143lina/article/details/79755480
各配置文件目录:

     Apache文档根目录:/opt/lampp/htdocs/

     Apache配置文件:/opt/lampp/etc/httpd.conf

     MySQL配置文件:/opt/lampp/etc/my.cnf

     PHP配置文件:/opt/lampp/etc/php.ini

     ProFTPD配置文件:/opt/lampp/etc/proftpd.conf

     PHPMyadmin配置文件:/opt/lampp/phpmyadmin/config.inc.php

常用XAMPP命令(在终端以root输入):

     启动/停止/重启Apache:/opt/lampp/lampp start/stop/restart(包括启动/停止/重启了mysql,proftpd)

     安全设置:/opt/lampp/lampp  security

     使用php版本/查看版本:/opt/lampp/lampp php4(5)/phpstatus

     只启动和停止Apache:/opt/lampp/lampp startapache/stopapache

     只启动和停止MySQL:/opt/lampp/lampp startmysql/stopmysql

     只启动和停止ProFTPD服务器:/opt/lampp/lampp startftp/stopftp

     启动和停止Apache的SSL支持:/opt/lampp/lampp startssl/stopssl

     随系统自启动:

                              ln –s /opt/lampp/lampp/etc/rc.d/rc3.d/S99lampp

                              ln –s /opt/lampp/lampp/etc/rc.d/rc4.d/S99lampp

                              ln –s /opt/lampp/lampp/etc/rc.d/rc5.d/S99lampp

    取消自启动:

                             ln –s /opt/lampp/lampp K01lampp

    卸载XAMPP:rm –rf /opt/lampp

4. 配置mysql的文件:

MySQL配置文件:/opt/lampp/etc/my.cnf
把my.ini中的字符集改为utf8,原文档中已有,但需要取消注释(如果不配置utf8,取出的中文是乱码).
但我好像看ubuntu版本已经有了

4. mysql (这一步跳过,上面那个解决了自带的mysql的启动)

我最大的坑就在这里,mysql没启动起来,其实问题就是文件夹权限问题,然后mysql没法创建sock文件。 ERROR 2002 (HY000): Can't connect to local MySQL server through socket
废话不多说,直接讲怎么做:
1. 升级apt-get:

sudo apt-get update

2. 安装mysql-service

sudo apt install mysql-server

3. mysql根据安装server的错误日志路径,知道在/var/log/mysql/error.log
里面我找到一个错误是

2021-02-17T17:29:00.069273Z 0 [ERROR] [MY-011300] [Server] Plugin mysqlx reported: ‘Setup of socket: ‘/var/run/mysqld/mysqlx.sock’ failed, can’t create lock file /var/run/mysqld/mysqlx.sock.lock’
所以说是文件夹权限问题,按如下操作:

chown -R mysql /var/run/mysqld
chgrp -R mysql /var/run/mysqld
  1. 重启service
/opt/lampp/lampp restart

ok,现在数据库没有问题了。~~

5. 我该把html放哪里?mysql的数据库放哪里?

html和php文件放:/opt/lampp/htdocs/
如果是原装,mysql数据库放:/opt/lampp/var/mysql/
如果是重装,没重装这个找不到的,没重装也不需要重装,mysql数据库文件放:/var/lib/mysql/
直接把数据库文件夹和网页文件全拖拽到这就行

6. 远程服务器重置系统:

@    WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!     @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that the RSA host key has just been changed.
The fingerprint for the RSA key sent by the remote host is
33:78:e5:9a:e8:c5:47:73:81:a3:9b:4c:b0:ed:af:2d.
Please contact your system administrator.
Add correct host key in /root/.ssh/known_hosts to get rid of this message.
Offending key in /root/.ssh/known_hosts:2
Password authentication is disabled to avoid man-in-the-middle attacks.
Keyboard-interactive authentication is disabled to avoid man-in-the-middle attacks.
Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).

这个因为远程服务器重置系统了,现有密钥和其不匹配

ssh-keygen -R [你要连接的IP]

然后再连接即可。

7. 远程phpmyadmin:

找到文件/opt/lampp/etc/extra/httpd-xampp.conf
然后修改:

<Directory "/opt/lampp/phpmyadmin">
    AllowOverride AuthConfig Limit
    Require local
    ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var
</Directory>

为:

<Directory "/opt/lampp/phpmyadmin">
    AllowOverride AuthConfig Limit
    Allow from all
    Require local
    Require all granted
    ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var
</Directory>

重启服务:

/opt/lampp/lampp restart

但是这样发现任何人都能看了
这样:

sudo /opt/lampp/lampp security

一路yes即可

sudo vim opt/lampp/phpmyadmin/config.inc.php

$cfgServers[$i]['auth_type']= 'config';修改成:

$cfgServers[$i]['auth_type']= 'cookie';
然后访问
[ip:xx.xxx.xxx.xx]/phpmyadmin/
就可以看见需要输入账号密码才能访问数据库了
在这里插入图片描述

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值