您现在的位置是:首页 > 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开启https的方法
目前https是大势所趋,百度、谷歌纷纷表示采用https协议的页面更加安全,排名上会优先对待,生命不息,折腾不止,下面就分享一下Wordpress全站启用https访问实战教程。
实现WordPress注册完用户才可以看文章的方法
在WordPress中,可以给每篇日志设置单独的密码,然后通过其他方式发送给特定的用户,这个功能本来比较人性化了,但是对于用户转化没有任何好处
Wordpress怎么关闭文章发布时间
如果你想要突出你的精品文章,你可以在WordPress中将这篇文章设置为置顶。然而大家都知道,置顶后的文章在一段时间以后需要自己手动去关闭。
WordPress性能瓶颈遭遇攻击的解决方法
在最近的时间里,服务器依旧会瘫掉,无法处理HTTP请求。(每台Server安装了50个WP博客,每篇博客每天都有几十篇博客的更新,Google等各大主流爬虫成天都在爬)。分析了Apache的日志文件
相关源码
-
帝国cms淘宝客京东联盟网站整站源码下载本模板基于帝国CMS内核深度开发,为淘宝客行业量身定制。随着腾讯微信与淘宝生态的互联互通,淘宝客链接现可在微信、QQ等平台直接分享,为推广带来更多便利。模板特别优化了店铺推广功能,有效避免商品下架导致的链接失效问题,同时支持京东联盟等多平台商品推广。查看源码 -
响应式pbootcms模板新闻资讯博客自媒体门户网站行业通用解决方案为新闻资讯、自媒体博客打造的响应式网站模板,同时支持企业门户、行业资讯等多场景快速适配。通过简单的图文替换即可实现跨行业转型,显著降低建站成本。查看源码 -
帝国cms7.5手游评测资讯礼包合集游戏专区下载网站模板本模板基于帝国CMS系统开发,为手游门户网站设计。支持PC端与移动端同步生成HTML静态页面,内置多端同步生成功能。模板架构针对手业特点优化,满足APP下载、游戏资讯、攻略等内容发布需求。查看源码 -
(PC+WAP)绿色环保建筑设备通用行业pbootcms源码下载通过模块调整可适配园林景观、装配式建筑、绿色装修等生态建设相关领域。预制绿色建材展示、能耗模拟等专业模块,集成项目案例、环保工艺等建筑行业特色内容结构,测试数据包含LEED认证体系查看源码 -
帝国cms题库问答学习平台模板知识付费网站源码+数据采集为教育机构、培训平台及在线学习场景设计,提供完整的题库管理与问答服务解决方案。支持多种题型展示与答案查询,满足不同层次的学习需求。查看源码 -
(自适应)中英双语配线器材扎带线卡网站pbootcms模板免费下载为线缆管理、电气配线领域打造的响应式网站模板,采用PbootCMS内核开发,可快速搭建企业级产品展示平台,数据实时同步管理。查看源码
| 分享笔记 (共有 篇笔记) |

