3

我正在使用 lite-server 来帮助开发 ng2 应用程序(我是新手)。每当在项目中进行更改时,它都会在浏览器中刷新我的 index.html。

但是在我处理 index.php 的情况下呢?在我通过我的 LAMP 堆栈提供它之前。

在开发 ng2 应用程序时如何将 lite-server 的易用性与 php 编译的需要结合起来?是否有一些配置可以在 lite-server 中调整以启动不同的 URL(例如指向 apache 而不是 localhost:3000)?我检查了自述文件,但它没有提到类似的内容,我也无法通过谷歌搜索找到内容。

4

2 回答 2

1

更新的答案

我更新了答案,因为代理中间件无法按预期工作。我尝试了connect-modrewrite,它按预期工作。

首先,您需要像这样安装中间件:

npm install connect-modrewrite --save-dev

然后你可以在 browserSync 配置中添加这样的规则:

middleware : [
    require('connect-modrewrite')([
        `^/$ ${BACKEND_HOST}${BACKEND_URI}index.php [P]`
    ])
]

旧答案

您可以添加http-proxy-middleware。有了它,应该可以将索引重写为您的 apache 索引。

您可以在此处找到将中间件添加到 lite-server 的示例:https ://github.com/johnpapa/lite-server#custom-configuration

于 2016-04-28T08:57:14.793 回答
0

我不知道是否可以提供帮助,但我也添加了:

files: [
    "*","*.*","**"
]

因为 browserSync 缺少什么 php 文件。

所以,一般来说,我的 bs-config.js 文件看起来像:

module.exports = {
files: [
    "*","*.*","**"
],
server: {
    middleware: {
        1: require('connect-modrewrite')(['^/$ http://localhost/testing/angular2/index.php [P]'])
    }
}

};

其中http://localhost/是我的 wamp 服务器和 testing/angular2/ 我的文件夹位置,与启动 lite-server 的位置相同

于 2016-07-06T16:22:36.593 回答