网页与网站的区别和关系校园网络设计报告

diannao/2026/1/20 15:19:00/文章来源:
网页与网站的区别和关系,校园网络设计报告,php网站开发简历,网站建设模版 优帮云嵌入式 lnmp搭建的记录 N#xff1a;NginxP#xff1a;php编译PHP可能遇到的问题configure阶段#xff1a;Makefile-make阶段#xff1a;Makefile-make install阶段#xff1a; 文章比较水#xff0c;并没有没解决什么实际问题#xff0c;有点不好意思发布。但好像又记录… 嵌入式 lnmp搭建的记录 NNginxPphp编译PHP可能遇到的问题configure阶段Makefile-make阶段Makefile-make install阶段 文章比较水并没有没解决什么实际问题有点不好意思发布。但好像又记录了不少交叉编译配置的思路所以还是记录下来希望有更多大佬能给支支招共同进步 NNginx Nginx全版本 要交叉编译这个服务器需要前置pcre 点击去官网 根据官网讲述常用且稳定的是pcre虽然版本比较旧但是用的非常广。pcre2是最新的。 这里我下载的是pcre-8.44 这个Nginx的移植比较有意思它不像其他库其他库如果要拓展只需提供编译好的拓展库路径(包含/bin /lib /include 那个)而Nginx则需要提供源码它来给我们编译。 这就导致它对交叉编译不友好这里附上他人例程供参考。下面记录是我遇到的问题以及解决方法 作者爱是恒久忍耐_又有恩慈 找不到pcre2.h 这个简单根据对应行号和语句找到Makefile文件里对应的行添加指定的头文件路径即可。如果可以事先指定CFLAG增加头文件搜索路径也可以。 ipv6支持问题 跟上面引用的博客一样但是原作者似乎没遇到我这个问题我这里的ngx_event_udp.c里面有其他语句需要注释掉。既然选择不用ipv6那就贯彻到底了。108和220行 相信编译完成后肯定会遇到和我一样的问题 路径又指向了桌面虚拟机的Ubuntu路径不是开发板的路径。头疼中… Pphp 这里我用的是php7-2.15 点击官网下载其他版本 由于我这里需要用到许多库libxml、iconv、curl、gd、gmp…然后网上暂时没找到嵌入式linux版本的一键环境安装…所以只能硬着头皮一个个去交叉编译再包含进configure里。 我的流程是这样的 根据需要的库去点我点我官方文档里面搜索对应的库 然后点开安装 或者需求 一般都会给对应库的下载路径爱了爱了省去多少找源码的麻烦 下载了源码之后就好办了我用的是笨方法一个个写脚本configure交叉编译 比如libxml 的交叉编译 #!/bin/bash ./configure \ --prefix$PWD/1_libxml2-dom_install \ --hostarm-himix200-linux \ --with-tree \ --with-python$PWD/python \ CCarm-himix200-linux-gcc \ CPParm-himix200-linux-cpp \编译PHP可能遇到的问题 编译PHP可能会遇到很多麻烦首先先看config.log 日志查找原因。由于我这里库太多全部记录上不太现实我慢慢记录遇到的比较有代表性的问题吧。 PPS想指明第三方库所在路径有四种方法 1添加xx.pc文件export PKG_CONFIG_PATH/xxx:$PKG_CONFIG_PATH和指定搜索路径的export LD_LIBRARY_PATH/yourdir/:$LD_LIBRARY_PATH 2在 /etc/ld.so.conf 文件中添加库的搜索路径。将库文件的绝对路径/lib直接写进去就OK。 3丢到编译器的默认搜索路径。使用 arm-前缀-gcc -print-file-namexxx.so 来找到编译器的默认路径 4在configure阶段添加-LDFLAG 增加编译选项给编译器直接增加搜索路径 如果你移动了lib库文件对应的xx.pc也要同步更新且放到pkgconfig搜索目录下否则pkg-config会搜索不到 configure阶段 1找不到编译好了的依赖库。 在移植libgd库的时候因为它需要libjpeg、libpng、libzlib等依赖前置库所以先编译它们仨。然后在配置的脚本里–with-jpeg 的时候总是提醒说找不到库。 后面configure的配置日志看到了解决方法 很明显configure脚本没能找到我提供的交叉编译好的库只能手动给环境变量PKG_CONFIG_PATH 添加我libjpeg、libpng、libzlib这些库的lib/pkgconfig/xxx.pc 这个.pc 文件指明了对应库的头文件和lib库文件存在的路径。 既然只用这一次那就用作临时环境变量就行 #!/bin/bash export PKG_CONFIG_PATH/home/ouser/himix200-disk/php_nginx/src_tmp/zlib-1.2.11/1_zlib_install/lib/pkgconfig/:$PKG_CONFIG_PATH export PKG_CONFIG_PATH/home/ouser/himix200-disk/php_nginx/src_tmp/jpeg-9d/1-jpeg/lib/pkgconfig/:$PKG_CONFIG_PATH export PKG_CONFIG_PATH$PWD/freetype-2.10.1/1-TARGET/lib/pkgconfig/:$PKG_CONFIG_PATH export PKG_CONFIG_PATH/home/ouser/himix200-disk/php_nginx/src_tmp/libpng-1.6.37/1-TARGET/lib/pkgconfig/:$PKG_CONFIG_PATH echo $PKG_CONFIG_PATH./configure \ --prefix$PWD/1-libgd \ --hostarm-himix200-linux \ --with-config-file-path/disk/php-7.2.15-arm/lib/ \ 设置php.ini文件路径最好是你开发板上的目录因为这个选项编译后无法更改 --with-config-file-scan-dir/disk/php-7.2.15-arm/lib/ \ --without-fontconfig \ --with-zlib \ --with-jpeg \ --with-freetype \ --with-png \ CCarm-himix200-linux-gcc \再次运行脚本就能找到前置依赖库并编译成功啦 如果还是不行应该是交叉编译的ld工具查找不到对应库 这个时候就只能在配置脚本xxx.sh里的./configure里面增加一行 LDFLAGS-Ldir 意思是在调用编译的时候直接指定包含的库的路径。 如果这样也是不行就查看这个依赖库/lib/下面有没有.so 有种情况是Makefile没有成指向有效库文件的.so 软连接用;ln -s 源文件 目标文件 即可。 2configure可能存在的测试语句 坑爹改它修改之前要记得备份喔 3移植进开发板后发现找不到php.ini 文件 如果没有指定初始php.ini在源码目录里且有两个一个是生产环境一个是产品环境如php-development.ini 。在源码目录下用find ./ -name php*.ini一般就可以找到。 在桌面linux可以直接放到默认目录/usr/local/php下。但是咱这是交叉编译。 移植完后想给php指定php.ini文件路径的方法我暂时还没找到只能返回到configure阶段用--with-config-file-pathDIR \ --with-config-file-scan-dirDIR \两个选项来提前指定搜索路径。这个路径是你要把php.ini放在开发板的哪个位置。等make install完成后就把php.ini放到开发板对应目录即可。 这样就可以找到了。如果全部显示(none)就代表你应该向我上面那样重新编译一遍了。 Makefile-make阶段 1指明了头文件包含目录为交叉编译器包含的目录但是在make过程中总是去到/usr/include/stdlib.h 如果你能在你的交叉编译工具里找到stdlib.h然后make过程中又提示说/usr/include/stdlib.h err: #include bits/floatn.h no such file 意思是在/usr/include/stdlib.h找不到那个头文件。可是明明在configure步骤里指明了是交叉编译却又跑去找/usr/inlcude? 既然是make阶段出问题得勒去找编译脚本Makefile修改: 要修改Makefile --/usr/include 全部换成交叉编译下的 .../xxx/usr/include 如CFLAGS_CLEAN : -I/usr/include -g -O2 -fvisibilityhidden -DZEND_SIGNALS 路径包含改为-I/opt/hisi-linux/x86-arm/arm-himix200-linux/target/usr/include 如果你像我一样configure里包含了curl库则另外需要 107修改 -INCLUDES 里修改curl包含的路径别复制这是我的路径仅供参考 INCLUDES -I/home/ouser/himix200-disk/php_nginx/php-7.2.15/ext/date/lib -I/home/ouser/himix200-disk/php_nginx/src_tmp/libxml2-2.9.10/1_libxml2-dom_install/include/libxml2 -I/home/ouser/himix200-disk/php_nginx/src_tmp/openssl-1.1.1j/1_ssl_install/include -I/home/ouser/himix200-disk/php_nginx/src_tmp/zlib-1.2.11/1_zlib_install/include -I/home/ouser/himix200-disk/php_nginx/src_tmp/curl-7.75.0/1_curl_install/include -I/home/ouser/himix200-disk/php_nginx/php-7.2.15/ext/sqlite3/libsqlite -I$(top_builddir)/TSRM -I$(top_builddir)/Zend和libtool脚本修改 # LTCC compiler flags. 88行 路径更改别复制这是我的路径仅供参考 改前LTCFLAGS-I/usr/include -g -O2 -fvisibilityhidden -DZEND_SIGNALS 改后LTCFLAGS-I/opt/hisi-linux/x86-arm/arm-himix200-linux/target/usr/include -g -O2 -fvisibilityhidden -DZEND_SIGNALS这样愉快的make了几分钟之后又报错说需要生成的某某.lo文件找不到某某.h 头文件 这个简单直接根据目标 某某.lo 在Makeflie里找到对应段增加头文件搜索路径 -I/opt/xxx/ttt 文件路径。感觉好像是因为我修改了的configure导致生成的Makefile总是有各种各样的小问题还是说官方没有做过arm-linux移植适配 2./main/php_config.h 提示说 #define uint unsigned int 重复定义 具体的图片我没有截到总之就是提醒在这个文件里#define uint unsigned int等等的定义错误搜翻译和百度才知道是说重复定义了所以把这个文件里的这类定义注销掉。 Makefile-make install阶段 提示无法执行的文件格式 可能是我在configure原文件里把函数测试的那几句话给去掉了所以导致现在install阶段它居然想去执行开发板端的文件那肯定不行啊我的文件都用交叉编译的肯定不能在桌面Ubuntu执行怎么处理呢没办法。只能手动去开发板执行这条Makeflie语句 完事了就在Makefile里注释掉对应语句—‘’我都帮你执行了你就不用帮我执行了‘’ 最后搞定php 附上一点小测试php代码这是测试php::openssl库的加密解密功能的(官网抄的) ?php //$key previously generated safely, ie: openssl_random_pseudo_bytes $plaintext message to be encrypted; $ivlen openssl_cipher_iv_length($cipherAES-128-CBC); $iv openssl_random_pseudo_bytes($ivlen); $ciphertext_raw openssl_encrypt($plaintext, $cipher, $key, $optionsOPENSSL_RAW_DATA, $iv); $hmac hash_hmac(sha256, $ciphertext_raw, $key, $as_binarytrue); $ciphertext base64_encode( $iv.$hmac.$ciphertext_raw ); echo decrypt:; echo $ciphertext.\n;//decrypt later.... $c base64_decode($ciphertext); $ivlen openssl_cipher_iv_length($cipherAES-128-CBC); $iv substr($c, 0, $ivlen); $hmac substr($c, $ivlen, $sha2len32); $ciphertext_raw substr($c, $ivlen$sha2len); $original_plaintext openssl_decrypt($ciphertext_raw, $cipher, $key, $optionsOPENSSL_RAW_DATA, $iv); $calcmac hash_hmac(sha256, $ciphertext_raw, $key, $as_binarytrue); if (hash_equals($hmac, $calcmac))//PHP 5.6 timing attack safe comparison {echo $original_plaintext.\n; } echo $original_plaintext.2\n;var_dump(php_ini_loaded_file()); //获取当前加载php.ini配置文件路径var_dump(php_ini_scanned_files()); //如果有另外在加载别的php.ini文件会输出相应的信息,否则输出falseif(!extension_loaded(curl)) {echo 请在php.ini中设置支持php_mysql.dll.\n; } else {echo 您的环境已经支持mysql.\n; } // 这句话可以打印对应拓展库所能提供的函数可以用来测试库是否移植成功 print_r(get_extension_funcs(gd)); if (function_exists(imagejpeg)) { echo IMAP functions are available.br /\n; } else { echo IMAP functions are not available.br /\n; } ?

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/89931.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

智通人才网东莞最新招聘信息网站优化需要

给定一个整数数组 nums&#xff0c;处理以下类型的多个查询: 计算索引 left 和 right &#xff08;包含 left 和 right&#xff09;之间的 nums 元素的 和 &#xff0c;其中 left < right 实现 NumArray 类&#xff1a; NumArray(int[] nums) 使用数组 nums 初始化对象 in…

ppt模板免费网站在线制作wordpress可以做网站吗

Python有四种类型的数字:1.整型 a = 2 print a 2.长整型 b = 123456789 print b 3.浮点数 c = 3.2E2 print c 4.复数 复数为实数的推广,它使任一多项式都有根。复数当中有个“虚数单位”j,它是-1的一个平方根。任一复数都可表达为x+yj,其中x及y皆为实数,分别称为复数之“实…

淘宝网站制作多少钱泰州建站程序

Kong标准软件基于Bitnami apache 构建。当前版本为2.4.58 你可以通过轻云UC部署工具直接安装部署&#xff0c;也可以手动按如下文档操作&#xff0c;该项目已经全面开源&#xff0c;可以从如下环境获取 配置文件地址: https://gitee.com/qingplus/qingcloud-platform qinghub…

做阀门的网站在58同城做网站有生意吗

除了联合查询注入&#xff0c;报错注入&#xff0c;盲注注入 sql注入还有以下几类&#x1f9b9;&#x1f9b9;&#x1f9b9;&#x1f9b9;&#x1f9b9; 开始填坑 1.UA注入 原理&#xff1a;有些网站会把用户的UA信息写入数据库&#xff0c;用来收集和统计用户…

校园网网站建设规划书合肥关键词排名技巧

目录 1 560. 和为 K 的子数组 2 239. 滑动窗口最大值 3 76. 最小覆盖子串 菜鸟做题第二周&#xff0c;语言是 C 1 560. 和为 K 的子数组 题眼&#xff1a;“子数组是数组中元素的连续非空序列。” 解决本问题的关键就在于如何翻译问题。子数组 s 的和可以看作数组 i 的…

自然人做音频网站违法吗网站的备案的要多少钱

在OpenStack环境中&#xff0c;虚拟机的迁移可以通过多种方式实现&#xff0c;包括实时迁移&#xff08;Live Migration&#xff09;和冷迁移&#xff08;Cold Migration&#xff09; 实时迁移&#xff08;Live Migration&#xff09; 实时迁移是在虚拟机运行的同时将其迁移到…

网上商城网站开发报告网站无备案

MaxCompute 按量计费资源为弹性伸缩资源&#xff0c;对于计算任务&#xff0c;按任务需求提供所需资源&#xff0c;对资源使用无限制&#xff0c;同时MaxCompute按量计费的账单为天账单&#xff0c;即当天消费需要第二天才出账&#xff0c;因此&#xff0c;有必要对计算任务的消…

容桂做pc端网站黑白网站设计

6月26日&#xff0c;2024年世界移动通信大会&#xff08;MWC上海&#xff09;如期举行&#xff0c;今年的展会以“未来先行”为主题&#xff0c;涵盖“超越 5G、数智制造和人工智能经济”三大技术主题。移远通信作为全球物联网行业的引领者之一&#xff0c;今年不仅在展示内容上…

3g小说网站内蒙古城乡建设厅网站资质公告

原标题&#xff1a;Android向更多蓝牙设备开放Fast Pair功能 配对更轻松了 来源&#xff1a;cnBeta.COM蓝牙是一项应用非常广泛的无线技术&#xff0c;在无线音频配件、智能手表和智能家电中都广泛使用。不过蓝牙设备的配对体验并不优秀&#xff0c;而且无法实现跨平台的一致性…

深圳市制作网站ui设计接单价目表

背景 LangChain学习中&#xff0c;尝试改了一下哈里森和吴恩达课程当中的问题&#xff0c;看看gpt-3.5-turbo在集成了ReAct和wikipedia后&#xff0c;如何回答《三体》的主要内容是什么这个问题&#xff0c;当然&#xff0c;主要是为了回答这问题时LangChain内部发生了什么。所…

wordpress 旅游预订手机优化电池充电要开吗

在日常的Mac使用过程中&#xff0c;有效的文件管理策略是保持设备高效运行的关键。随着时间的推移&#xff0c;无用的文件和忘记的数据可能会悄悄占据你的硬盘空间&#xff0c;导致设备变慢&#xff0c;甚至影响你的工作效率。因此&#xff0c;学习Mac文件管理&#xff0c;并定…

青岛网站制作服务商wordpress可以仿任何站

在JavaScript中&#xff0c;箭头函数是ES6中引入的一种新的函数语法。它们提供了一种更简洁的方式来写函数&#xff0c;并且对 this 关键字的行为有特殊的处理。 箭头函数&#xff08;Arrow Functions&#xff09; 箭头函数使用一个“箭头”&#xff08;>&#xff09;定义…

网站备案要多久时间苏州网上注册公司网址

0、测试环境 我们简化开发&#xff0c;创建一个简单的环境&#xff08;因为没有其它包比如 service、dao&#xff0c;所以这里不用 Spring 容器&#xff0c;只用 SpringMVC 容器&#xff09;&#xff1a; Servelet 容器配置&#xff1a; package com.lyh.config;import org.s…

南宁网站排名外包郑州网站推广公司服务

https://wenku.baidu.com/view/fb553d795acfa1c7aa00cc27?pcf2#1 转载于:https://www.cnblogs.com/linewman/p/9918760.html

中文网站建设设计钱建网站

算术运算指令算术运算指令是反映CPU计算能力的一组指令&#xff0c;也是编程时经常使用的一组指令。它包括&#xff1a;加、减、乘、除及其相关的辅助指令。 该组指令的操作数可以是8位、16位和32位(80386)。当存储单元是该类指令的操作数时&#xff0c;该操作数的寻址方式可以…

wordpress修改链接东莞整站优化

7.1 视图容器组件 7.1.2 scroll-view组件 设置滚动条位置时默认是没有动画过渡的&#xff0c;scroll-with-animation设置为true即可开启动画过渡效果。 enable-back-to-top设置为true&#xff0c;用户单击标题栏可以让scroll-view中的内容快速地回到最顶部。iOS单击标题栏即…

p2p网站建设网站金融模版

1、获取 nginx 的镜像 # 默认是latest版本docker pull nginx 2、运行 nginx 容器 docker run --name nginx-80 -p 80:80 --rm -d nginx# --name nginx-80 设定容器的名称# -p 80:80 端口进行映射&#xff0c;将本地的80端口映射到容器内部的80端口# --rm 表示容器退出后直接…

网站制作ppt模板wordpress远程图片模块

fuxploide,一款针对文件上传的Fuzz检测工具 1.工具概述2.安装3.参数解析4.使用案例1.工具概述 Fuxploider 是一种开源渗透测试工具,可自动检测和利用文件上传表单缺陷。该工具能够检测允许上传的文件类型,并能够检测哪种技术最适合在所需的 Web 服务器上上传 Web Shell 或任…

大型门户网站 代码wordpress菜单文件

今天学习Django框架&#xff0c;用ajax向后台发送post请求&#xff0c;直接报了403错误&#xff0c;说CSRF验证失败&#xff1b;先前用模板的话都是在里面加一个 {% csrf_token %} 就直接搞定了CSRF的问题了&#xff1b;很显然&#xff0c;用ajax发送post请求这样就白搭了&…

浙江综合网站建设配件创建官方网站

1 synchronized可重入性的理解 当一个线程试图操作一个由其他线程持有的对象锁的临界资源时&#xff0c;将会处于阻塞状态&#xff0c;但当一个线程再次请求自己持有对象锁的临界资源时&#xff0c;如果当前锁是重入性&#xff0c;会请求将会成功&#xff0c;如果当前锁不是可…