2016-04-28 15 views
2

Ich benutze Lite-Server, um bei der Entwicklung von ng2-Anwendungen (zu denen ich neu bin) zu helfen. Es aktualisiert meine index.html im Browser, wenn Änderungen im Projekt vorgenommen werden.Verwenden von Lite-Server für ng2 App-Entwicklung, wie mit PHP zu arbeiten?

Aber was in dem Fall, wo ich mit Index.php zu tun habe? Bevor ich es durch meinen LAMP-Stack bedient habe.

Wie kann ich die Benutzerfreundlichkeit von Lite-Server bei der Entwicklung von ng2-Apps mit der Notwendigkeit der PHP-Kompilierung kombinieren? Gibt es eine Konfiguration, die ich in lite-server anpassen kann, um beispielsweise eine andere URL zu starten (die auf apache statt localhost: 3000 verweist)? Ich habe die Readme-Datei überprüft, aber sie erwähnt nichts dergleichen, und ich kann auch nichts mit einer Google-Suche finden.

Antwort

1

aktualisiert Antwort

ich die Antwort aktualisiert, weil es nicht so funktioniert, wie mit der Proxy-Middleware erwartet. Ich versuchte stattdessen die connect-modrewrite, die wie erwartet funktioniert.

Zuerst müssen Sie die Middleware wie diese installieren:

npm install connect-modrewrite --save-dev 

Dann können Sie die Regel wie diese in Ihrer browserSync Config hinzu:

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

alte Antwort

Sie können die http-proxy-middleware hinzufügen . Damit sollte es möglich sein, den Index in Ihren Apache-Index umzuschreiben.

Sie ein Beispiel für das Hinzufügen einer Middleware hier lite-Server finden: https://github.com/johnpapa/lite-server#custom-configuration

+0

ich in der Dokumentation für browsersync gerade jetzt sah (https://www.browsersync.io/docs/options/# option-proxy). Als Alternative zu Ihrem Rat, konnte ich es nicht einfach mit einem Proxy für den Apache Localhost konfigurieren? (Ich bin jetzt nicht zu Hause, sonst habe ich es ausprobiert.) –

+1

@WillemvanGerven Soweit ich weiß, leitet dies alle Ihre Anfragen an den Apache weiter, so dass Sie nichts aus 'browserSync' laden können. – Dinistro

+1

@WillemvanGerven Ich habe gerade die Antwort aktualisiert. Das Problem mit dem proxy-middleqare ist, dass es nur auf ein Verzeichnis und nicht nur auf eine Datei oder zumindest auf den Indexaufruf ('/') angewendet werden kann. Ich hoffe, das hilft Ihnen – Dinistro

0

Ich weiß nicht, ob helfen kann, aber ich hinzugefügt zu:

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

weil browserSync whatching fehlte PHP-Dateien.

So in der Regel meine bs-config.js Datei wie folgt aussieht:

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

};

wo http://localhost/ mein wamp Server und Test/angular2/meine Ordner, egal in welcher die Lite-Server starten