2017-08-08 3 views
0

Ich habe gerade eine react App mit create-react-app erstellt und die App startet bei Port 3000, gut. Ich möchte auf die App mit einem Präfix zugreifen, in meinem Fall/Knoten und in Port 80, d. H. http://localhost/node. Dafür habe ich Apache konfiguriert mit:Proxy reagiere Server hinter Apache

<Location /node> 
    Allow from all 
    ProxyPass http://localhost:3000/ retry=0 
    ProxyPassReverse http://localhost:3000/ 
</Location> 

und arbeitet teilweise, kann ich die http://localhost/node zugreifen, aber die Seite nicht geladen korrekt, weil die Route statisch zu bündeln ist. Usage the console ich sehe die Anfrage schlägt fehl mit nicht gefunden.

bundle.js ist nicht in index.html, daher sollte es von webpack eingespielt werden.

Ich habe mich gefragt, wo man Webpack konfigurieren kann, um die Konfiguration zu ändern, um package.js unter node/static/js/bundle.js oder etwas ähnliches zu setzen.

Antwort

0

Dies ist, wie ich dieses Problem gelöst (keine Notwendigkeit, Apache-Konfigurationsdateien zu bearbeiten):

Zuerst lief ich:

npm run build 

Buildordner zu erzeugen.

Dann kopierte ich den gesamten Build-Ordner in den Apache-Stammordner/var/www/html /.

Der letzte Schritt besteht darin, zu überprüfen, ob die Links in der Datei index.html des Ordners/var/www/html/build korrekt sind. Insbesondere überprüfte ich, dass die js und CSS-Datei Links Form sind:

<link href="static/css/main.xxxxxx.css" rel="stylesheet"> 

und

<script type="text/javascript" src="static/js/main.yyyyyyy.js"> 

Das war alles, danach die Web-Service reagieren funktioniert einwandfrei in der Adresse http://localhost/node.