首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >zabbix.conf重定向到另一个端口

zabbix.conf重定向到另一个端口
EN

Stack Overflow用户
提问于 2016-12-31 15:28:19
回答 2查看 6.9K关注 0票数 2

我在理解如何重新配置初始zabbix.conf文件以不劫持开箱即用的80端口时遇到了麻烦。

以下是应用程序提供的默认zabbix.conf:

代码语言:javascript
运行
AI代码解释
复制
#
# Zabbix monitoring system php web frontend
#

Alias /zabbix /usr/share/zabbix

<Directory "/usr/share/zabbix">
    Options FollowSymLinks
    AllowOverride None
    Require all granted

    <IfModule mod_php5.c>
        php_value max_execution_time 300
        php_value memory_limit 128M
        php_value post_max_size 16M
        php_value upload_max_filesize 2M
        php_value max_input_time 300
        php_value always_populate_raw_post_data -1
        # php_value date.timezone Europe/Riga
    </IfModule>
</Directory>

<Directory "/usr/share/zabbix/conf">
    Require all denied
</Directory>

<Directory "/usr/share/zabbix/app">
    Require all denied
</Directory>

<Directory "/usr/share/zabbix/include">
    Require all denied
</Directory>

<Directory "/usr/share/zabbix/local">
    Require all denied
</Directory>

我想要做的是配置我的zabbix,就像我在我的服务器上做其他应用程序一样,就像这样。此服务器上实际已有2个应用程序。jira是端口8080上的反向代理,confluence是端口8090上的反向代理。我想在另一个端口上的反向代理上使用zabbix,比如8070。:

代码语言:javascript
运行
AI代码解释
复制
<VirtualHost *:80>
  ServerName zabbix.domain.com
  ServerAlias zabbix

  Redirect / https://zabbix.domain.com
</VirtualHost>

<VirtualHost *:443>
  ServerName zabbix.domain.com
  ServerAlias zabbix

  Include ssl/default/ssl.cfg

  ProxyPass / http://localhost:8070/
  ProxyPassReverse / http://localhost:8070/
</VirtualHost>

问题是这不起作用,因为Zabbix的运行假设没有其他东西在使用端口80。

这样做只会得到一个不显示的页面

代码语言:javascript
运行
AI代码解释
复制
Alias /zabbix /usr/share/zabbix

<Directory "/usr/share/zabbix">
    Options FollowSymLinks
    AllowOverride None
    Require all granted

    <IfModule mod_php5.c>
        php_value max_execution_time 300
        php_value memory_limit 128M
        php_value post_max_size 16M
        php_value upload_max_filesize 2M
        php_value max_input_time 300
        php_value always_populate_raw_post_data -1
        # php_value date.timezone Europe/Riga
    </IfModule>
</Directory>

<Directory "/usr/share/zabbix/conf">
    Require all denied
</Directory>

<Directory "/usr/share/zabbix/app">
    Require all denied
</Directory>

<Directory "/usr/share/zabbix/include">
    Require all denied
</Directory>

<Directory "/usr/share/zabbix/local">
    Require all denied
</Directory>

<VirtualHost *:80>
  ServerName zabbix.domain.com
  ServerAlias zabbix

  Redirect / https://zabbix.domain.com
</VirtualHost>

<VirtualHost *:443>
  ServerName zabbix.domain.com
  ServerAlias zabbix

  Include ssl/default/ssl.cfg

  ProxyPass / http://localhost:80/
  ProxyPassReverse / http://localhost:80/
</VirtualHost>
EN

回答 2

Stack Overflow用户

发布于 2016-12-31 17:33:15

我差一点就到了!这样做-

代码语言:javascript
运行
AI代码解释
复制
<VirtualHost *:80>
  ServerName zabbix.domain.com
  ServerAlias zabbix
  Alias /zabbix /usr/share/zabbix

  <Directory "/usr/share/zabbix">
    Options FollowSymLinks
    AllowOverride None
    Require all granted

    <IfModule mod_php5.c>
      php_value max_execution_time 300
      php_value memory_limit 128M
      php_value post_max_size 16M
      php_value upload_max_filesize 2M
      php_value max_input_time 300
      php_value always_populate_raw_post_data -1
      php_value date.timezone America/Toronto
    </IfModule>
  </Directory>

  <Directory "/usr/share/zabbix/conf">
    Require all denied
  </Directory>

  <Directory "/usr/share/zabbix/app">
    Require all denied
  </Directory>

  <Directory "/usr/share/zabbix/include">
    Require all denied
  </Directory>

  <Directory "/usr/share/zabbix/local">
    Require all denied
  </Directory>
</VirtualHost>

允许我点击http://zabbix.domain.com/zabbix的网址并获得该网站。

票数 1
EN

Stack Overflow用户

发布于 2019-09-06 10:05:09

实际上,您应该在Apache conf中更改此设置。你可以像这样搜索它:

代码语言:javascript
运行
AI代码解释
复制
grep -rE "\b80\b" /etc/apache2

您将获得要更改的位置列表。这很可能是像Listen 80<VirtualHost *:80>这样的东西。

请注意,原始zabbix配置没有任何端口配置。

因此,在更改您需要的内容之后,您应该重新启动apache,并确保它正在运行:

代码语言:javascript
运行
AI代码解释
复制
service apache2 restart
service apache2 status

URL

还要注意,在VirtualHost中不需要ServerName。Zabbix将仅“劫持”"zabbix“文件夹,并且仅在apache正在侦听的特定端口上进行”劫持“。因此,如果您将80更改为8081,您应该会看到zabbix在上运行:

代码语言:javascript
运行
AI代码解释
复制
http://localhost:8081/zabbix/

如果你的机器可以从像zabbix.domain.com这样的外部域访问,那么这将会很好地工作:

代码语言:javascript
运行
AI代码解释
复制
http://zabbix.domain.com:8081/zabbix/
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41409606

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档