您现在的位置是:首页 > cms教程 > WordPress教程WordPress教程
.NET Core上运行WordPress的方法
访蕊2025-02-08WordPress教程已有人查阅
导读在.NET Core 上运行的 WordPress,无需安装PHP既可跨平台运行WordPress。在Peachpie中实现PHP所需的功能数月后,现在终于可以运行一个真实的应用程序:WordPress。
在.NET Core 上运行的 WordPress,无需安装PHP既可跨平台运行WordPress。在Peachpie中实现PHP所需的功能数月后,现在终于可以运行一个真实的应用程序:WordPress。
本文是基于Peachpie https://github.com/peachpiecompiler/peachpie
Peachpie是一个基于Microsoft的Roslyn的现代PHP编译器。在.NET上运行WordPress
流行的Phalanger项目已经证明,可以在Microsoft .NET上运行几乎未经修改的WordPress应用。
但是这个解决方案存在着问题,与新的WordPress版本不兼容。现在,Peachpie 也能够将WordPress作为一个完全托管的应用程序运行在.NET和.NET Core上。
这只是一个证明,Peachpie仍然是一个正在进行中的项目。不建议在生产环境中使用它。
本篇文章主要目的是证明Peachpie真的与WordPress中使用的标准PHP兼容,并展示其优点。先决条件:
.NET Core 1.1 or newer
MySQL Server
对WordPress修改
由于Peachpie 0.5.0版本,编译器不支持扩展有条件声明的类,如
注释第一个Services_JSON_Error类,保留第二个
这里准备了一个修改好的WordPress版本,已经包括上面修改,使你编译项目更容易。
.NET Core WordPress
预先修改 wp-config.php 配置了包含MySQL数据库的凭据的文件。使用默认端口3306,密码为'' ,服务器是'localhost'。这里大家根据实际情况进行修改。
编译WordPress
使用 Peachpie.Compiler.Tools 进行编译WordPress项目。
然后有一个app 项目也就是ASP.NET Core。
还原好以后
cd app
dotnet run
然后访问 ,只要MySQL 配置正确,就会跳转至安装界面。注意要先在数据库中创建wordpress 数据库。
为了证明该网站真的在.NET Core上运行,我们可以反编译website.dll 看看。
本文是基于Peachpie https://github.com/peachpiecompiler/peachpie
Peachpie是一个基于Microsoft的Roslyn的现代PHP编译器。在.NET上运行WordPress
流行的Phalanger项目已经证明,可以在Microsoft .NET上运行几乎未经修改的WordPress应用。
但是这个解决方案存在着问题,与新的WordPress版本不兼容。现在,Peachpie 也能够将WordPress作为一个完全托管的应用程序运行在.NET和.NET Core上。
这只是一个证明,Peachpie仍然是一个正在进行中的项目。不建议在生产环境中使用它。
本篇文章主要目的是证明Peachpie真的与WordPress中使用的标准PHP兼容,并展示其优点。先决条件:
.NET Core 1.1 or newer
MySQL Server
对WordPress修改
由于Peachpie 0.5.0版本,编译器不支持扩展有条件声明的类,如
if (condition) { class X {} }
class Y extends X {} // extending conditionally declared class
wp-includes/class-json.php:
注释条件 if (!class_exists(...))注释第一个Services_JSON_Error类,保留第二个
这里准备了一个修改好的WordPress版本,已经包括上面修改,使你编译项目更容易。
.NET Core WordPress
预先修改 wp-config.php 配置了包含MySQL数据库的凭据的文件。使用默认端口3306,密码为'' ,服务器是'localhost'。这里大家根据实际情况进行修改。
编译WordPress
使用 Peachpie.Compiler.Tools 进行编译WordPress项目。
然后有一个app 项目也就是ASP.NET Core。
static void Main() {
var root = Path.GetDirectoryName(System.IO.Directory.GetCurrentDirectory()) + "/website";
var host = new WebHostBuilder()
.UseKestrel()
.UseWebRoot(root).UseContentRoot(root) // content root with wp static files
.UseUrls("")
.UseStartup<Startup>() // initialization routine, see below
.Build();
host.Run();
}
class Startup {
public void Configure(IApplicationBuilder app) {
Pchp.Core.Context.DefaultErrorHandler = new Pchp.Core.CustomErrorHandler(); // disables debug asserts
app.UsePhp(new PhpRequestOptions() { ScriptAssembliesName = new[] { "website" } }); // installs handler for *.php files and forwards them to our website.dll
app.UseDefaultFiles();
app.UseStaticFiles();
}
}
接着还原项目,在根目录下dotnet restore.还原好以后
cd app
dotnet run
然后访问 ,只要MySQL 配置正确,就会跳转至安装界面。注意要先在数据库中创建wordpress 数据库。
为了证明该网站真的在.NET Core上运行,我们可以反编译website.dll 看看。
本文标签:
很赞哦! ()
相关教程
- ansible部署lnmp和wordpress的步骤方法
- CentOS8+Nginx安装部署WordPress的步骤方法
- WordPress的Google字体导致加载速度慢的解决方法
- 基于Centos7详细安装wordpress的方法
- Ubuntu系统lnmp框架搭建WordPress的方法
- Wordpress的Shell的使用方法介绍
- docker搭建WordPress的步骤方法教程
- mariadb和nginx搭建wordpress的方法
- lnmp安装nginx搭建wordpress的方法
- openEuler中基于LAMP部署WordPress的方法
- CentOS8搭建LNMP+WordPress的步骤方法
- centos安装部署wordpress的方法步骤
图文教程
wordpress适合做哪些网站
WordPress是使用PHP语言开发的博客平台,用户可以在支持PHP和MySQL数据库的服务器上架设属于自己的网站。
wordpress添加页眉的工具介绍
Download Header Footer Code Manager 就是一个可以在网站页眉或页脚、文章内容上方和下方插入代码(HTML / Javascript / CSS等)的插件。
wordpress模板安装使用方法介绍
wordpress主题模板怎么用,通过后台上传安装主题,通过FTP上传安装主题模板,主题安装还是上传,都需要压缩成服务器支持的格式
WordPress主题语言包汉化的制作方法
经过这次yHtml5主题的制作,我学会了怎么给主题制作语言包,就是一般的汉化主题啦。需要的朋友可以了解下,废话不多说,看步骤
相关源码
-
帝国cms7.5淘宝客电商品牌特价带手机站带会员模板下载为电商品牌特价展示设计的帝国CMS模板,集成PC端与移动端双平台适配。采用瀑布流商品布局,支持品牌分类聚合展示,突出特价促销视觉冲击力。查看源码 -
(PC+WAP)蓝色电子半导体电子设备网站pbootcms源码下载本模板基于PbootCMS内核开发,为半导体和电子科技行业设计,特别适合电子元器件、集成电路、半导体设备及相关技术产品展示。查看源码 -
(PC+WAP)蓝色五金机械设备营销型网站源码下载基于PbootCMS内核开发的营销型企业网站模板,为五金机械设备类企业打造,通过标准化数字展示提升客户转化率。模板采用模块化设计,可快速适配机床工具、建筑五金、阀门管件等细分领域。查看源码 -
(自适应响应式)英文外贸汽车零配件五金机械网站模板为汽车零部件制造商与五金机械出口企业打造的响应式网站模板,内置多语言切换功能,支持产品参数表、OEM能力展示等外贸场景需求。通过结构化数据展示帮助海外买家快速理解产品规格。查看源码 -
帝国CMS7.5小说推荐公众号导航带wap手机站+带采集工具本模板为小说导航类网站设计开发,基于帝国CMS7.5内核构建,针对小说阅读领域的分类聚合需求进行深度优化。通过智能分类系统和用户行为分析,实现小说资源的精准推荐与导航功能。查看源码 -
(PC+WAP)pbootcms模板黑色门窗定制五金建材网站下载为门窗定制与五金建材企业设计的网站解决方案,采用PbootCMS开发,兼具专业展示与营销功能。黑色系设计突显工业质感,响应式布局确保在手机、平板等设备上的浏览体验。通过简单的内容替换,也可适用于建材贸易、家具定制等相关行业。查看源码
| 分享笔记 (共有 篇笔记) |

