zoukankan      html  css  js  c++  java
  • 树莓派搭建web服务器(详细且良心)

     

    安装Apache

    Apache服务器可以从Debian的源中下载。可以用apt下载。

    首先要更新apt的软件列表。如果不运行sudo apt-get updata的话,apt软件就不知道有没有新的软件包或者版本更新。

    Apache可以用下面的命令来安装

    sudo apt-get install apache2

    安装mysql

    mysql在Debian的源中也有,可以用这个命令来安装

    sudo apt-get install mysql-server

    安装过程中,会出现一个提示符让你输入一个密码。

    这个密码是mysql root用户的密码。

    现在这个版本不会要输入密码,安装完之后直接无密码进入

    注意:这个版本有一个问题不知道是开发人员故意设定还是怎么

    • 安装mysql-server的过程没有提示输入root的password
    • 安装成功后,输入指令mysql -uroot,提示Access denied for user ‘root’@’localhost’
    • 输入sudo mysql -uroot可以直接连接成功
    • 输入sudo mysql -uroot -p后回车输入任意password也可以直接连接成功
    • 输入mysql -h 127.0.0.1 -P 3306 -uroot -p提示Access denied for user ‘root’@’localhost’

    ----------------------------------------------------------------------------------------------------------------

    我的解决方法

    • 需要给root设置password
    • 需要将用户表中plugin字段由auth_plugin设置成mysql_native_password

    sudo mysql -uroot     进入我们的mysql,一般能空密码进去的

    在里面输入

       USE mysql;

       UPDATE user SET password=PASSWORD('123456') WHERE user='root';

       UPDATE user SET plugin='mysql_native_password' WHERE user='root';

       FLUSH PRIVILEGES;

       exit;

    现在我们退出了

    sudo systemctl restart mysql(重启服务)

    sudo mysql -uroot(现在这个命令是进不去的)

    要输入sudo mysql -uroot -p123456

    这里的账号密码是用来进入phpmyadmin

    安装PHP

    Perl是系统预装的,所以我这里只写PHP的安装。

    输入下面的命令,就可以安装PHP,以及PHP访问mysql数据库所需要的库。

    sudo apt-get install php

    sudo apt-get install php-mysql

    安装phpmyadmin

    sudo apt-get install phpmyadmin

    安装过程中弹出选择框 
    第一次的弹框有apache和lightd两个选项,按空格选中Apache2,回车 
    第二次选择No,除非你会手动配置phpmyadmin的一些设置

    sudo a2enmod rewrite

    sudo ln -s /usr/share/phpmyadmin /var/www/html

    最后重启一下你的树莓派;]

    配置完成

    安装完成后,可以在浏览器中输入你路由器的IP或域名,就可以访问你的网站了。

    你应该能看到一个页面显示“It works”,但是没有其它内容。

    删掉/var/www/html/index.html,创建一个/var/www/html/index.php,可以测试服务器和PHP工作是否正常。

    最后我们还要配置一个ngrok开机自启(有需要的弄,这个你可以不弄)

    虽然将开机启动后要执行的代码放到/etc/rc.local中可实现开机自动运行,但是这样并不利于管理。

    而且我至今还没学会


    今天,我们模仿服务来实现开机自启动
    思路很简单,就是在/etc/systemd/system/目录下创建一个叫做ngrok.service的文件,然后写入一下代码:


    [Unit] 
    Description=ngrok 
    After=network.target 
    [Service] 
    Type=simple 
    ExecStart=这里写你启动ngrok的命名
    [Install] 
    WantedBy=multi-user.target 

    这样的话系统就会把我们的脚本识别为服务,然后我们就可以用systemctl这个工具来轻松管理ngrok的运行与启动。


    1. 运行ngrok 
    sudo systemctl start ngrok 

    2. 查询ngrok的运行状态 
    sudo systemctl status ngrok 

    如果没运行起来可能是你命令或权限的问题:解决方法把你的命名复制出来到终端运行如果能运行就应该没问题,如果还是不能启动服务

    你可以尝试重启系统,如果还是不行尝试把你的ngrok移动到/usr/bin/

    3. 实现开机自启动ngrok 
    sudo systemctl enable ngrokw 

    我们仅仅写了一个文件,就实现了ngrok的管理,是不是觉得很不错那!

    此文章用到的网络文档:

    https://www.aliyun.com/jiaocheng/120428.html

    http://shumeipai.nxez.com/2013/10/13/install-and-config-lamp.html

    https://blog.csdn.net/a791693310/article/details/80612573

     

  • 相关阅读:
    .NET5都来了,你还不知道怎么部署到linux?最全部署方案,总有一款适合你
    一款基于.NET Core的认证授权解决方案-葫芦藤1.0开源啦
    开源项目葫芦藤:IdentityServer4的实现及其运用
    MySQL大表优化方案
    Sec-Fetch-*请求头,了解下?
    前端开发快速入门
    从零开始打造专属钉钉机器人
    打造钉钉事件分发平台之钉钉审批等事件处理
    React中的高阶组件
    浏览器本地存储方案
  • 原文地址:https://www.cnblogs.com/Frank-dev-blog/p/9425307.html
Copyright © 2011-2022 走看看