我是Spring框架的新手。我有一个用CakePHP编写的应用程序,我想在Eureka Server中注册它。我使用Spring cloud sidecar来做到这一点,但现在不起作用。这是我的挎包配置
server.port=5678
spring.application.name=vio-web
eureka.client.serviceUrl.defaultZone=http://localhost:8090/eureka
sidecar.port=80
sidecar.health-uri=http://localhost:80/camera/health.json
我创建如下的HealthController
<?php
App::uses('AppController', 'Controller');
class HealthController extends AppController {
public function index() {
$this->autoRender = false;
$res = ['status' => 'UP'];
header('Content-Type: application/json');
echo json_encode($res);
}
}
?>
还有这样的路线
Router::connect('/health.json', array('controller' => 'health', 'action' => 'index'));
在浏览器中,我可以看到结果{"status":"UP"}
,但是Eureka Server说我的cakephp应用程序已关闭。
我创建了一个与cakephp app文件夹相同级别的测试文件夹(位于/srv/http
中),并将一个带有简单信息health.json
的{{1}}文件放入其中,更改了{"status":"UP"}
,重新启动sidecar并有用。但是使用cakephp应用程序无法正常工作。
有人可以帮我吗?