使用树莓派(raspberry pi)搭建网站(nginx+php+mysql+ddclient)

2023-11-18

标签: 树莓派 raspberrypi php 网站 mysql 分类: Linux技术
最近在研究学习PHP,有时候想随时就学习,所以就决定搭建一个网站,随时可以进行学习,因为要24小时在线,要低功耗和安静,所以选择了树莓派!我们开始吧(nginx+php+mysql)


1.安装网站系统
sudo apt-get install nginx php5-common php5-fpm php-apc php5-mysql php5-gd mysql-server




2、修改nginx配置文件
sudo vi /etc/nginx/sites-enabled/default
--------------------------------------------------------------------------------
把其中的:
代码:
        location / {
                root   /var/www;
                index  index.html index.htm;
        }


改为:
代码:
        location / {
                root   /var/www/nginx-default;
                index  index.php index.html index.htm;
        }
----------------------------------------------------------------------------------
其中的:
代码:
   #location ~ \.php$ {
   #   fastcgi_pass 127.0.0.1:9000;
   #   fastcgi_index index.php;
   #   include fastcgi_params;
   #}


改为:
location ~ \.php$ {
# fastcgi_split_path_info ^(.+\.php)(/.+)$;
# # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini
#
# # With php5-cgi alone:
        # fastcgi_pass 127.0.0.1:9000;
        fastcgi_pass unix:/var/run/php5-fpm.sock;
                fastcgi_param  SCRIPT_FILENAME  /usr/share/nginx/www/nginx-default$fastcgi_script_name;
# # With php5-fpm:
        # fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
}






3.测试
  sudo vi /var/www/nginx-default/index.php
<?PHP
phpinfo();
?>


http://IP/index.php


4.由于我们用的是树莓派,所以要优化一下部分的性能


对mysql的调优,打开配置文件/etc/mysql/my.cnf修改以下几处。
[mysqld]
key_buffer = 16k
max_allowed_packet = 1M
thread_stack = 64K
thread_cache_size = 4
query_cache_limit = 1M
default-storage-engine = InnoDB


优化php.ini,php-fpm,打开配置文件/etc/php5/fpm/php.ini和/etc/php5/fpm/php-fpm.conf修改以下几处。
memory_limit=16M
process.max=4


5. 为了方便调试PHP代码,打开PHP的调试


(可能不同的平台文件的位置是不同的)
vim /usr/local/php5/lib/php.ini
找到
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Error handling and logging ;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
部分。开始配置


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Error handling and logging ;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
error_reporting = E_ALL
display_errors = On
display_startup_errors = Off
log_errors = On
log_errors_max_len = 1024
ignore_repeated_errors = Off
report_memleaks = On
track_errors = On
error_log = /var/log/php_errors.log
保存退出。
/etc/init.d/apache restart


查看日志:
tail -f /var/log/php_errors.log


6.使用ddclient进行域名的映射


我是在https://www.dnsdynamic.org/这个注册的一个账号,获得是DDNS


使用命令 sudo apt-get install ddclient,中间要设置很多东西,按照提示设置(也可以随便设置,等会用我的配置)
=============================================================================
修改配置文件
pi@raspberrypi ~ $ sudo cat /etc/ddclient.conf
daemon=30                                # check every 60 seconds
syslog=yes                              # log update msgs to syslog
mail=root                               # mail all msgs to root
mail-failure=root                       # mail failed update msgs to root
pid=/var/run/ddclient.pid               # record PID in file.
ssl=yes                                 # use ssl-support.  Works with
                                        # ssl-library
use=web, web=myip.dnsdynamic.com        # get ip from server.
server=www.dnsdynamic.org               # default server
login=你的用户名                        # default login
password=你的密码                       # default password
server=www.dnsdynamic.org,              \
protocol=dyndns2                        \
你的网站域名 xxxx.dnsd.me


具体的配置选项可以参考 https://www.dnsdynamic.org/api.php
==========================================================================
pi@raspberrypi ~ $ sudo cat /etc/default/ddclient 
# Configuration for ddclient scripts 
# generated from debconf on Tue Apr 23 22:27:01 CST 2013
#
# /etc/default/ddclient


# Set to "true" if ddclient should be run every time a new ppp connection is 
# established. This might be useful, if you are using dial-on-demand.
run_ipup="false"


# Set to "true" if ddclient should run in daemon mode
# If this is changed to true, run_ipup must be set to false.
run_daemon="true"


# Set the time interval between the updates of the dynamic DNS name in seconds.
# This option only takes effect if the ddclient runs in daemon mode.
daemon_interval="30"
===========================================================================
然后在你的路由器上开启端口映射


开始享受你的网站
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用树莓派(raspberry pi)搭建网站(nginx+php+mysql+ddclient) 的相关文章

  • 电商数据分析---RFM用户画像

    电商数据分析 一 数据描述 数据下载 订单顺序编号 订单号 用户名 商品编号 订单金额 付款金额 二 分析角度 1 整体角度 探索每个月有效的订单 以及销售额 2 个人角度 统计第一次购买的数量 以及最新时间购买的人数 3 用户画像 使用R
  • Windows API一日一练(13)TranslateMessage函数

    Windows API一日一练 13 TranslateMessage函数 分类 Direct3D 2007 07 23 08 41 7881人阅读 评论 5 收藏 举报 windows api winapi null 工作 Transla
  • linux基础命令之zip

    zip用来解压缩文件或对文件进行打包 语法 zip 选项 参数 zip压缩包 指定要创建的zip压缩包 文件列表 指定要压缩的文件列表 通常用法 zip r aaa zip aaa 压缩目录 zip r aaa zip aaa 压缩文件 选
  • 服务器来电后自动开机

    实战 xfs文件系统的备份和恢复 XFS提供了 xfsdump 和 xfsrestore 工具协助备份XFS文件系统中的数据 xfsdump 按inode顺序备份一个XFS文件系统 与传统的UNIX文件系统不同 XFS不需要在dump前被卸
  • Mac M1(arm 系列芯片)如何安装 Chromium

    最近写个脚本用到 puppeteer 然后安装 Chromium 出现一点问题 这里记录一下解决方案 Puppeteer 自动安装失败 在 Puppeteer 安装时会自动安装 Chromium 然而却总是报错 502 导致下载失败 直接下
  • [Unity] Unity 插件Behavior Designer行为树使用

    Unity 插件Behavior Designer行为树使用 1 创建行为树 在Tools gt Behavior Designer gt Editor中打开行为树编辑编辑窗口 选择一个游戏物体 在Behavior Designer中右键A
  • open3d-点云读写和显示

    目录 一 点云读取 二 点云写入 二 点云显示 三 open3d支持如下点云文件类型 四 代码及结果示例 一 点云读取 read point cloud filename format auto remove nan points True
  • 人工智能专家:AI并不像你想象的那么先进

    2019 10 28 14 44 32 神译局是36氪旗下编译团队 关注科技 商业 职场 生活等领域 重点介绍国外的新技术 新观点 新风向 编者按 近些年 很多人工智能产品已经投入应用 走进人们的生活 人工智能迅猛的发展速度很难不引人注意
  • OSI七层模型及各层功能概述

    目录 1 OSI的基本概念及原则 2 OSI七层模型各层功能概述 3 OSI七层模型举例 4 OSI七层模型总结 1 OSI的基本概念及原则 OSI是Open System Interconnect的缩写 意为开放式系统互联 其各个层次的划
  • pandas读取SQL数据库到DataFrame

    在查询sql数据库时可以直接将数据读取到dataframe中 这样直接解决读取了大量含BLOB的记录后出现BLOB数据无效的问题 如LOB variable no longer valid after subsequent fetch 对这
  • python绘制饼图双层_Python通过matplotlib画双层饼图及环形图简单示例

    1 饼图 pie 即在一个圆圈内分成几块 显示不同数据系列的占比大小 这也是我们在日常数据的图形展示中最常用的图形之一 在python中常用matplotlib的pie来绘制 基本命令如下所示 python3 X版本 vals 1 2 3
  • 刷脸支付促使传统行业迎来了数字化变革契机

    人脸识别的时候可以进行性别识别 性别识别是利用计算机视觉来辨别和分析图像中的人脸性别属性 多年来 人脸性别分类因其在人类身份认证 人机接口 视频检索以及机器人视觉中的潜在应用而备受关注 性别分类是一个复杂的大规模二次模式分类问题 分类器将数
  • Flutter安装的常见错误

    1 android studio not installed flutter config android studio dir E Android AndroidStudio 指定android studio的目录 2 flutter d
  • Pytorch Windows C++调用(libtorch) Cmake编译 分别在python和C++中验证一致

    0 下载准备 具备vs2015 cmake libtorch libtorch https pytorch org get started locally 先用的release版本测试了一下 把lib中的dll放在bin中 然后加到环境变量
  • 云服务器网卡mac地址修改,服务器mac地址修改教程

    服务器mac地址修改教程 内容精选 换一换 您可以根据以下步骤使用管理控制台创建一个裸金属服务器实例 本教程以部署一台Web应用服务器为场景 旨在帮助您快速创建一个实例 因此不会涵盖所有可能的选项 详细的创建信息和参数说明 请参见创建裸金属
  • NGUI的学习

    一 导入和创建UIROOT 1 导入Ngui 导入哪个都可以 推荐第一个 2点击NGUI Options Reset prefabs ToolBar 插入背景prefab创建了UIROOT和摄像机及背景 二 UI Label 的使用 1 选
  • (三)kityMinder如何实现节点间的跳转

    本文章系列将会记录在做kityminder二次开发过程中 遇到的问题以及解决方法 有同事反馈需要脑图能够支持类似于xmind中的节点中的跳转的功能 但是实际上节点目前支持的链接方式只是支持跳转到外部的链接上去而已 并不能够支持节点间跳转的功
  • 微信支付——微信退款实战教程(Java版)

    微信支付之微信申请退款实战 Java版 微信支付业务场景 一 注意事项 二 微信支付退款案例 1 微信退款案例 二 微信支付官方说明 总结 微信支付业务场景 当交易发生之后一年内 由于买家或者卖家的原因需要退款时 卖家可以通过退款接口将支付
  • 利用python中GDAL读写tif文件

    废话不多说 直接上代码 读取tif from osgeo import gdal import sys def Read img2array img file path 读取栅格数据 将其转换成对应数组 img file path 栅格数据

随机推荐

  • 推特色情机器人账号泛滥,马斯克的“治推谋略”何在?

    据BleepingComputer消息 推特虚假机器人账户泛滥的问题不仅还未得到解决 其中传播色情信息的机器人账户近期反而严重泛滥 在安全研究小组MalwareHunterTeam最近的一项调查研究中曝光了多个传播虚假消息的机器人账户 它们
  • ASP.NET三层架构详解

    实例截图 文件 590m com f 25127180 489402295 978e99 访问密码 551685 以下内容无关 分割线 在vue3里面 我们可以通过 reactive 来实现引用类型的响应性 那么基础类型的响应性如何来实现呢
  • C语言 在数组中找到和值为目标值的两个元素

    输入你的目标值target 就能找到相加为target的两个数了 自己输入一个数组 并且设定一个目标值 target 就能在数组中找到两个相加等于target的元素了 include
  • 基于linux的调试技术

    虽然使用printk函数可以很方便的将消息写入日志文件或者控制台 但是大量使用printk函数频繁的操作日志文件或者控制台文件会严重影响到linux驱动的开发性能 因此 这就需要linux驱动在开发阶段使用printk函数输出消息 在正式发
  • 解决“Pick up system reserved threshold 500ms because of config missing”

    skywalking启动日志一直刷 Pick up system reserved threshold 500ms because of config missing 如下图 原因缺少动态的配置项 skywalking支持动态配置的配置项如
  • 【总结】为什么对累积奖励减去baseline项能起到减小方差的作用?

    深度强化学习实验室 论坛 http deeprlhub com 来源 https zhuanlan zhihu com p 98506549 作者 风清云 很多论文的工作都专注于减少policy gradient的方差 以得到更加优质且稳定
  • TT100K数据集

    http cg cs tsinghua edu cn traffic sign data model code data zip
  • 字符转ASCLL码输出

    今天做EDA课程设计时 同学的串口通信程序涉及到字符和ASCLL码的转化 我看着他一个字符的对着ASCLL表 然后再敲进程序 真心急 想想都大三了 C语言都大一学的了 而现在经常遇到的问题 很多大学生都直接用非常笨的方法去弄 却不知道使用自
  • USB转串口那些事儿—USB转串口工作原理及应用

    一 简介 USB转串口即实现计算机USB接口到物理串口之间的转换 可以为没有串口的计算机或其他USB主机增加串口 使用USB转串口设备等于将传统的串口设备变成了即插即用的USB设备 USB虚拟串口应用特点 USB应用广泛 支持热插拔 传输速
  • Postman接口测试——我看过最详细+全面的文章教程了【转载】

    Postman简介 一般简单的接口测试我们可以直接在浏览器里面进行调试 但是涉及到一些权限设置的就无法操作了 因此我们需要接口测试的相关工具 Postman 是一个接口测试和 http 请求的工具 官网地址 https www getpos
  • Mac电脑花屏

    原因 GPU 加速导致 和电脑的独显有关 解决办法 打开谷歌浏览器 点击上图的三个点 选择设置 在高级设置中选择系统 关掉硬件加速模式
  • 十大优秀编程项目,让你的简历金光闪闪

    全文共3241字 预计学习时长6分钟 被问到如何学习编程时 最常听到的问题就是 有没有什么新项目的好点子 一些老套的答案有 做一个象棋游戏 或者 命令行界面 这些答案没有错 但这些例子不符合现代编程的需要 现代软件编写需要经常使用软件服务化
  • 【华为OD机试真题2023B卷 JAVA&JS】阿里巴巴找黄金宝箱(V)

    华为OD2023 B卷 机试题库全覆盖 刷题指南点这里 阿里巴巴找黄金宝箱 V 知识点数组哈希表滑窗 时间限制 1s 空间限制 256MB 限定语言 不限 题目描述 一贫如洗的樵夫阿里巴巴在去砍柴的路上 无意中发现了强盗集团的藏宝地 藏宝地
  • 尤克里里整理

    尤克里里 如何按弦 如何弹奏 带数字的四线谱 如何按弦 如何弹奏 带数字的四线谱 数字代表品格数 1就是1品 2就是2品 数字标记在几弦上面 就按住几弦的几品
  • 计算机毕设项目 大数据个性化音乐推荐算法分析

    文章目录 0 前言 1 研究目的 2 研究方法 2 1 传统推荐算法 2 2 基于LightGBM决策树模型的推荐算法 3 研究结论 0 前言 基于大数据个性化音乐推荐算法分析 提示 适合用于课程设计或毕业设计 工作量达标 源码开放 项目分
  • 告别卡顿,教你正确清理手机APP缓存垃圾,释放空间

    智能手机已经成为我们生活中不可或缺的重要工具 让我们随时随地保持联系 获取信息和娱乐 但是 使用过多的应用程序可能会导致手机变得缓慢并占用存储空间 这些应用程序产生大量的缓存和垃圾文件 如果不及时清理 将会影响手机的性能和速度 今天 我们将
  • 集团如何实现数字化转型?永洪BI助力由由集团

    随着 互联网 的边界不断拓宽 生活性服务业正驶入数字化转型快车道 中国信息通信研究院发布的 中国数字经济发展报告 2022 显示 2021年 我国数字经济发展取得新突破 数字经济规模达到45 5万亿元 占 GDP 比重达到39 8 三大产业
  • Chrome中安装扩展的三种方式

    chrome浏览器安装扩展有多种方式 请看以下介绍 1 从chrome网上应用商店安装 优雅法 在google chrome中打开chrome网上应用商店 https chrome google com webstore 搜索需要的扩展 在
  • 详解list.toArray(new String[0])

    List
  • 使用树莓派(raspberry pi)搭建网站(nginx+php+mysql+ddclient)

    标签 树莓派 raspberrypi php 网站 mysql 分类 Linux技术 最近在研究学习PHP 有时候想随时就学习 所以就决定搭建一个网站 随时可以进行学习 因为要24小时在线 要低功耗和安静 所以选择了树莓派 我们开始吧 ng