2016-04-06 11 views
2

Hızlı prototipleme sırasında veritabanının tutarlılığı ve güvenliği umrumda değil (yalnızca test dosyalarını kullanıyorum). Ancak, daha sonra kullanmak için en iyi uygulamaları bilmek istiyorum. Şu anda, uygulama http://localhost:8080'da çalışmazsa eXist'i bin/shutdown.sh komut dosyasıyla nasıl durduracağımızı anlayamıyorum.eXist-db, kendi IP'si olan uzak bir linux sunucusunda nasıl güvenli bir şekilde durur?

Jetty için başka bir bağlantı noktası kurdum ve işe yarıyor. Tabii ki uygulamayı bin/startup.sh ile başlatıyorum. Ben İskelesi + durdurmak bin/shutdown.sh ile var olmaya çalıştığını Ancak, bu hata var:

ERROR: HTTP server returned unexpected status: Origin http://localhost:8080 is not configured, perhaps you wanted http://[my IP]:8080 
CAUSE: HTTP server returned unexpected status: Origin http://localhost:8080 is not configured, perhaps you wanted http://[my IP]:8080 

Ben sarmalayıcı yüklemeyi denedi ve gerçekten sistem başlatıldığından bu yana çalışan mevcut ama hala (o güvenle duramayız Sadece onu öldürebilirim.

Uygulamam 8081, Ubuntu 14.04 numaralı bağlantı noktasında çalışıyor.

GÜNCELLEME

Ben oturumu çıkın ve bin/shutdown.sh kullanmaktansa, kaydeder, bir screen oturumu içinde uygulamayı çalıştırırsanız:

/usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java -Xms128m -Xmx512m -Dfile.encoding=UTF-8 -Djava.endorsed.dirs=/home/honza/eXist-db/lib/endorsed -Dexist.home=/home/honza/eXist-db -jar /home/honza/eXist-db/start.jar shutdown 
ERROR: HTTP server returned unexpected status: Not Found 
CAUSE: HTTP server returned unexpected status: Not Found 

Ben kullanıyorsanız: java -jar start.jar shutdown --uri=xmldb:exist://[my IP]:8081/xmlrpc, bu kaydeder:

/usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java -Xms128m -Xmx512m -Dfile.encoding=UTF-8 -Djava.endorsed.dirs=/home/honza/eXist-db/lib/endorsed -Dexist.home=/home/honza/eXist-db -jar /home/honza/eXist-db/start.jar shutdown 
ERROR: HTTP server returned unexpected status: Not Found 
CAUSE: HTTP server returned unexpected status: Not Found 

Sarıcı yöntemini kullanırsanız, yani eXist, rver başlangıç ​​ve arka planda çalışır ve bin/shutdown.sh kullanın, hala aynı şekilde günlüğe kaydeder.

Sarma yöntemini kullanır ve uygulamayı sudo java -jar start.jar shutdown --uri=xmldb:exist://[my IP]:8081/xmlrpc ile durdurmaya çalışırsanız, yine de aynı şekilde günlüğe kaydedilir. Statik IP'yi kullanmıyor ve bunun yerine localhost kullanıyorsam, yine de aynı şekilde günlüğe kaydeder.

@joewiz'e göre, tek bir çalışma yöntemi benim için ctrl-c.

+0

XML-RPC aracılığıyla 8080 bağlantı noktasında uzak sunucuya erişiminiz yok gibi görünüyor ya da aslında yanlış bir uzak sunucuya erişiyorsunuz gibi görünüyor – adamretter

+0

Sorun, sanal bir makinede çalıştırıyorum olabilir. "localhost" yerine statik bir IP üzerinde çalıştığı anlamına gelir (orada çalışan herhangi bir uygulama IP'yi kullanacak şekilde yapılandırılmalıdır). Ve eğer önemliyse 8081 numaralı limanda koşuyorum. –

+0

Sorunun yardımcı olması için, bu sorunu ek bilgilerle güncelledim. Teşekkürler! –

cevap

4

bakın bir port belirtmek için http://exist-db.org/exist/apps/doc/deployment.xml#D2.2.5.8 kısmındaki "Veritabanı Kapatma":

java -jar start.jar shutdown --uri=xmldb:exist://localhost:8081/xmlrpc 

Alternatif bin/startup.sh işlemini durdurmak için ctrl-c kullanın.

+0

Teşekkürler, aslında, ctrl-c' yöntemini kullanıyordum, ancak güvenli olmadığını ve veritabanını bozabileceğine ikna oldum. Evet, Dokümantasyonu kontrol ettim ama yardım etmedi :) –

+0

Üzgünüz, "java ... kapatma" komutunun öneri veritabanını kapatmadığını mı kastediyorsunuz? – joewiz

+0

Bu biraz karmaşık bir şey. Bu komut, eXist arka planda çalışırsa yararlıdır. Şu anda, sorunun ne olduğunu hatırlayamıyorum, sadece tüm uygulamayı sorunsuz bir şekilde durdurmadığını biliyorum (başlangıçta sarmalayıcı üzerinden başlatmaya çalışıyordum). Benim için, bir terminal oturumu (veya ekran oturumu) içinde eXist çalıştırmak ve ctrl-c' ile durdurmak için iyidir. –

İlgili konular