WSL2子系统安装CentOS8及源码编译Nginx1.18+PHP7.4+MySql8.0开发环境
一、WSL2安装CentOS8及源码编译Nginx1.+PHP7.4+MySql8.0开发环境
在前文中介绍了WSL(Windows Subsystem for Linux)以及在Win中的系统源码安装与配置WSL2。首先,系统源码安装并配置WSL2后,系统源码Ubuntu等Linux发行版可通过Windows应用商店直接安装。系统源码但为了与线上服务器环境一致,系统源码kotlin源码1001kotlin源码这里介绍如何不通过应用商店手动安装适配WSL的系统源码Linux发行版,以 CentOS8为例。系统源码
1. 安装Chocolatey
NuGet是系统源码一个用于.NET开发平台的软件包管理器,Chocolatey是系统源码基于NuGet的一个软件包管理器,在Windows中可通过命令行安装程序。系统源码通过在PowerShell(管理员模式)中输入命令并执行,系统源码可以安装Chocolatey。系统源码详细安装说明请查阅其官网文档。系统源码
2. 安装LxRunOffline
LxRunOffline是系统源码一款用于管理WSL子系统的实用工具,能备份、创建、恢复、导出WSL子系统,同时支持安装适配WSL的任何Linux发行版,并允许将WSL子系统安装到任意目录。在PowerShell窗口中输入命令安装LxRunOffline,安装完成后重启PowerShell。
3. 下载CentOS镜像
GitHub上有开源的适用于WSL的CentOS系统安装镜像,通过选择CentOS8分支并进入docker目录,下载文件centos-8-x_.tar.xz。将下载的文件保存在指定路径,如D盘。
4. 安装CentOS镜像
通过输入特定命令并回车,可以将CentOS系统安装到C盘的centos文件夹下,并命名为centos。主播 app 源码注意文件路径在Linux与Windows下不同,这里C盘路径用反斜线表示,D盘路径为Windows下的路径。
5. 升级为WSL2
使用命令查看已安装的WSL信息,并将指定的WSL发行版升级为WSL2,格式为:命令格式,输入并执行命令,设置默认使用的发行版,再次使用命令查看,查看到centos的VERSION已变为2,并且名称前加了*号。
6. WSL子系统的启动与关闭
通过命令即可启动WSL子系统,停止WSL子系统的命令为:wsl --shutdown -n 系统名称。若直接输入wsl --shutdown会停止所有已启动的WSL子系统。此外,通过命令net stop LxssManager也可以停止WSL子系统。
7. 使用Windows Terminal
为了更好地配合WSL,安装Windows Terminal是必要的。通过Terminal可以直接打开所有已安装的WSL发行版,并根据需要调整配色方案。
8. 目录设置
在WSL2系统中可直接访问Windows磁盘文件,建议将安装软件包放在F:\wsl目录下,将网站Web程序放在E:\wwwroot目录中,访问路径为/mnt/f/wsl和/mnt/e/wwwroot。若性能降低超出可忍受范围,再考虑将这两个目录移动到WSL的虚拟磁盘。
9. centos8基本配置
查看centos版本,安装wget、vim等工具,更换国内源并备份原始yum源,java eip系统源码下载对应版本的repo文件,确保包含的源如aliyun符合需求。
. 源码编译安装Nginx
安装编译工具及库文件,如gcc、pcre、zlib、openssl等,下载并解压nginx源码,开始编译,检查系统环境、生成Makefile文件,生成脚本及配置文件,安装并创建目录,复制生成的模块和文件。
. 编译安装MySql8.0
下载并解压MySql8.0源码,解压后移动目录,创建data目录并初始化MySql,添加需要的库文件,创建my.cnf配置文件,启动MySql。
. 源码编译安装php7.4
下载php7.4源码,安装编译工具和库文件,创建用户组和用户,配置编译参数,解压缩并移动到指定目录,检查配置并生成配置文件,安装完成。
. LNMP环境测试
测试Nginx和PHP-FPM的配合,配置Nginx和PHP-FPM,通过phpinfo文件验证php和Nginx的股票指标 源码 导入配合情况,测试phpMyAdmin,确保数据库连接无误,至此,LNMP环境测试完成。
JobIntentService源码解析
Android 8.0引入了更严格的系统资源管控,包括后台限制规则。
在Android 8.0中,禁止应用在后台运行时创建Service。
若应用在后台运行,将会收到错误提示。
JobIntentService是Android 8.0中新增的类,继承自Service。
该类用于执行加入队列的任务。对于Android 8.0及以上系统,JobIntentService任务将通过JobScheduler.enqueue执行,而8.0以下系统则继续使用Context.startService。
JobIntentService使用便捷,只需调用YourService.enqueueWork(context, new Intent())方法。
相较于JobService,JobIntentService简化了操作,开发者无需关注其生命周期,避免了在后台运行时创建Service导致的crash问题,且通过静态方法即可启动。
源码解析如下:首先记录几个关键变量的含义。
在Android 8.0以上的系统中,执行流程如下。
work的具体逻辑处理在何处?
通过JobService的工作原理,查找onStartJob方法。
最终,处理work的青龙牛牛源码论坛逻辑会流转至AsyncTask中,通过protected abstract void onHandleWork(@NonNull Intent intent)方法实现。
子类需实现jobIntentService处理work,使用线程池的AsyncTask执行,无需考虑主线程阻塞问题。
针对Android 8.0以下系统,流程如下:回到onStartCommand方法。
同样,最终会流转至Asynctask任务执行onHandleWork。
.netcommunitytoolkit从8.0.0版本开源,新增了哪些亮
在.NET 8中,开发者将体验到一系列性能提升,包括动态配置文件引导优化(PGO)代码生成器的引入,该功能可根据实际使用情况优化代码,显著提高性能,最高可达%。支持AVX-指令集,允许对位数据向量执行并行操作,提升数据处理速度。原始类型,如数字及其他类型,实现了新的可格式化和可解析接口,无需转码开销即可直接格式化和解析为UTF-8。
.NET Aspire是一个用于构建云原生应用的堆栈,集成遥测、弹性、配置和运行状况检查等功能,提供从第一天到第一百天轻松管理云原生应用的基础依赖。访问预览版本了解更多。
.NET 8容器增强功能简化容器使用体验,每个.NET映像包含非root用户,通过单行配置提高安全性。非root的.NET SDK工具可以发布容器映像,映像大小更小,部署更快。选择安全强化的Chiseled Ubuntu映像变体,减少攻击面。
原生AOT(按需编译)让开发者无需等待JIT(即时)编译器在运行时编译代码,仅部署应用程序所需的代码,使应用程序能够在不允许使用JIT编译器的受限环境中运行。
人工智能功能让.NET应用程序融入生成式人工智能和大型语言模型,通过.NET SDK中的开箱即用AI功能和与多种工具的无缝集成轻松利用AI。系统库和示例模板为开发人员提供了轻松入门的途径,包括客户聊天机器人、增强检索、Azure AI服务开发等应用。
Blazor为.NET开发者提供了全栈Web应用程序构建能力,同时使用服务器和客户端处理Web UI需求,通过优化页面加载时间、提升可扩展性和用户体验,实现Blazor Server和Blazor WebAssembly之间的自动切换,增强身份验证、授权和身份管理功能。
.NET MAUI提供单一项目系统和代码库构建跨平台应用,支持WinUI、Mac Catalyst、iOS和Android,本机AOT(实验性)支持针对类似iOS的平台。Visual Studio Code扩展为开发人员提供跨平台应用程序所需工具,支持最新版本的iOS和Android。
C# 简化语法以提高开发效率,允许在任何类和结构中创建主构造函数,无需样板代码初始化字段和属性,支持简洁的数组、跨度和其他集合类型创建,提供默认lambda参数,内联数组用于性能优化。
.NET 8引入反射改进,提供函数指针元数据访问,支持函数指针与类型信息的集成,减少源代码更改,支持AOT Web应用的配置绑定生成器,针对Android应用的AOT编译减小应用大小,代码分析工具验证正确使用.NET库API。
新功能包括时间抽象、UTF8改进、加密支持SHA-3哈希基元、基于流的ZipFile方法等,提供更高效、灵活的开发体验。
PHP8.0环境详细安装教程
一、PHP环境安装流程:
通过在线或离线方式下载PHP 8.0.0版本,确保在安装前预先配置好依赖包(推荐在第一步抛出异常的依赖先进行安装,简化后续安装过程)。安装地址为:php.net/downloads.php,如果网络环境不理想,推荐先进行离线下载,然后上传至服务器端。
解压下载的PHP压缩包:执行 `tar -xvf php-8.0.0.tar.gz` 命令,便于后续进行源码安装和配置管理。
配置信息:
源码安装步骤包括:配置、编译、安装。在配置阶段,重要参数包括`--prefix`配置安装路径和`--with-config-file-path`设置php.ini文件的存放位置。这些参数的选择有助于后续对软件进行统一管理和维护。
在配置参数时需要注意:所有命令应保持在单行,确保代码的可读性和易于复制。可利用`./configure --help`检查参数的具体含义。
安装完成后,会提示配置成功的信息,例如出现配置成功的信息或者文件存放路径。
编译与安装:
配置成功后,执行`make`对源代码进行编译,并使用`make install`安装。如遇编译或安装过程中的异常情况,按照提供的解决方案逐一解决,例如使用`dnf install`命令安装缺失依赖等。
使用`cc: internal compiler error`异常时,多因内存使用不足,可尝试增加交换分区以应对,完成后删除交换分区。
查看安装情况:
切换至安装目录的`bin`目录下,执行`php -v`查看版本信息,确认PHP环境安装是否成功。
二、管理配置文件:
生成所需的配置文件,包括`php.ini`、`www`配置文件、`php-fpm`配置文件及`php-fpm`可执行文件。
使用`php-fpm`管理PHP程序,相比其他进程管理方式,`php-fpm`在CPU与内存使用方面更具优势,并且不易崩溃,减轻了监控压力。
安装流程:
1. 启动`php-fpm`
2. 检查`php-fpm`进程启动状态
3. 查看`php-fpm`所占用的端口
4. 解决安装中出现的`php command not found`异常
完成后,可进行技术圈子的加入,享受免费资源、长期技术支持和行业动态获取服务。加入时需有长期兴趣,确保与圈子的资源利用理念相符合。
写在最后:
确保PHP环境配置的正确性和完整性,通过本教程的步骤和提示,可有效节省时间,避免错误和困扰。希望该文章能为您的PHP开发之旅提供有力支持。
Ubuntu下安装《伯乐发卡系统》全过程
在Ubuntu环境下安装《伯乐发卡系统》的全过程,主要涉及源码包上传、PHP和Nginx的安装与配置、文件目录修改、数据库配置、缓存清空以及MySQL设置等步骤。步骤如下:
首先,上传支持MySQL 8.0的源码包。推荐访问指定链接获取源码包,此包对SQL进行了调整以兼容MySQL 8.0。
其次,安装PHP 7.4。参考相关指南进行安装。
启动PHP服务。
接着,配置Nginx,查找并替换conf文件中的服务名称、根目录和fastcgi_pass参数。确保fastcgi_pass参数与PHP配置相匹配,如果是socket形式则需调整。
接下来,对文件目录进行修改,确保全新安装时删除data/update.php文件。
修改config表中的mysql think_config,将main_webhost的值调整至所需。
清空缓存,删除runtime/cache/目录下的所有文件。
在/etc/mysql/mysql.conf.d/mysqld.cnf中,在[mysqld]部分加入配置以关闭严格模式。重启MySQL服务。
最后,打开页面进行系统安装。
在安装之前,可选择将application/config.php中的exception_tmpl参数恢复为THINK的异常页面,以优化错误处理。
2024-11-30 08:40
2024-11-30 08:21
2024-11-30 08:00
2024-11-30 07:42
2024-11-30 07:16