2015-11-29 1 views
0

J'ai installé geoserver sur mon serveur Web et je souhaite créer une couche GeoTIFF. J'accède à geoserver via ma machine locale et j'ai un fichier GeoTIFF sur ma machine locale. Le problème est que geoserver ne reconnaît pas le chemin du fichier que j'ai spécifié, donc il est incapable de créer le calque pour moi.Le fichier de données d'accès au GeoServer se trouve à distance

ci-dessous est ma commande curl,

exec ('pelotonner -u admin: geoserver -v -XPUT -H "Content-type: image/tiff" --data binaire "http://192.168.1.2:82/TrueMarble.32km.1350x675.tif" "http://107.167.186.125:8080/geoedge/rest/workspaces/geoedge/coveragestores/st_tif_layer_8/file.geotiff" ');

Il crée une couverture mais ne crée pas de couche. Impossible d'accéder à mon fichier à l'aide de l'adresse IP, si ce dernier réside dans le même serveur que le serveur geoserver installé.

Répondre

0

Ce que vous essayez de faire est possible mais je pense que votre syntaxe curl est erronée. J'utiliser soemthing comme:

curl -u admin:geoserver -v -XPUT -H "Content-type:image/tiff" --data-binary @TrueMarble.32km.1350x675.tif "http://107.167.186.125:8080/geoedge/rest/workspaces/geoedge/coveragestores/st_tif_layer_8/file.geotiff" 

où le fichier est refered par nom (car il est local) sinon curl juste envoyer le nom du fichier que les données.

A partir de la page man boucle:

Si vous commencez les données avec le @ lettre, le reste doit être un nom de fichier pour lire les données à partir de, ou - si vous voulez curl pour lire la données de stdin. Plusieurs fichiers peuvent également être spécifiés. Post- des données provenant d'un fichier nommé 'foobar' serait donc fait avec --data @foobar. Lorsque --data est dit de lire à partir d'un fichier comme que, les retours chariot et les sauts de ligne seront supprimés.

+0

Merci beaucoup, vous avez économisé beaucoup de mon temps. –