详细了解在.NET Core 上运行的WordPress


本文摘自PHP中文网,作者迷茫,侵删。

在.NET Core 上运行的 WordPress,无需安装PHP既可跨平台运行WordPress。

在Peachpie中实现PHP所需的功能数月后,现在终于可以运行一个真实的应用程序:WordPress。

本文是基于Peachpie https://github.com/iolevel/peachpie

Peachpie是一个基于Microsoft的Roslyn的现代PHP编译器。

在.NET上运行WordPress

流行的Phalanger项目已经证明,可以在Microsoft .NET上运行几乎未经修改的WordPress应用。

但是这个解决方案存在着问题,与新的WordPress版本不兼容。现在,Peachpie 也能够将WordPress作为一个完全托管的应用程序运行在.NET和.NET Core上。

这只是一个证明Peachpie仍然是一个正在进行中的项目。不建议在生产环境中使用它

本篇文章主要目的是证明Peachpie真的与WordPress中使用的标准PHP兼容,并展示其优点。

先决条件:

.NET Core 1.0

MySQL Server

对WordPress修改

由于Peachpie 0.5.0版本,编译器不支持扩展有条件声明的类,如

1

2

3

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

编译由dotnet及其website/project.json 项目文件驱动。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

{

  "version": "1.0.0",

  

  "buildOptions": {

    "compilerName": "php",

    "compile": "**\\*.php",

    "debugType": "portable",

    "xmlDoc": true

  },

  "dependencies": {

    "Peachpie.App": "0.5.0-*"

  },

  "tools": {

    "Peachpie.Compiler.Tools": "0.5.0-*"

  },

  "frameworks": {

    "netcoreapp1.0": {

      "dependencies": {

        "Microsoft.NETCore.App": {

          "type": "platform",

          "version": "1.0.0"

        }

      }

    }

  }

}

使用 Peachpie.Compiler.Tools 进行编译WordPress项目。

阅读剩余部分

相关阅读 >>

.net和c#有什么区别

详解可选参数和命名参数实例

详细介绍.net并行与多线程学习基础

c#如何使用正则表达式来验证中文字符的案例

.net验证后台页面是否登录实例教程

c#与vb.net混合开发测试的详细介绍(图文)

c# 中十进制与二进制、十六进制、八进制转换详解

.net使用cache框架的实例介绍

.net实现微信js-sdk分享功能代码展示

.net mymvc框架处理返回值的教程

更多相关阅读请进入《.net》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...