在2.4.7中创建Apache别名

时间:2016-06-25 11:35:13

标签: web apache2 virtual hosts observium

我的服务器ip是内部的(我不必在互联网上发布)192.168.251.4

我在/ opt / observium / html /文件夹中有一个网站,我想在浏览器中找到写http://192.168.251.4/observium的网站。

我尝试使用虚拟主机但没有成功。

操作系统:Ubuntu服务器14.04LTS Apache版本:2.4.7

谢谢!

2 个答案:

答案 0 :(得分:1)

以下问题的答案我也曾在apache中使用过“别名”功能,但您还需要为天文台做另一件工作,以使其正常工作:

在Apache(基于ubuntu)中,我添加了文件/etc/apache2/conf-available/observium.conf

<IfModule mod_alias.c>
    Alias /observium /opt/observium/html/
</IfModule>
<Directory /opt/observium/html/>
    Options FollowSymLinks
    AllowOverride None
    <FilesMatch \.php$>
      SetHandler application/x-httpd-php
    </FilesMatch>
    DirectoryIndex index.php
    Options Indexes FollowSymLinks MultiViews
    AllowOverride All
    Require all granted
</Directory>

然后激活配置(同样,在RH变体中,它指的是ubuntu,它会略有不同):

a2enconf observium
systemctl reload apache2

由于天文台希望使用站点的/作为参考,并且您需要在/opt/observium/config.php中进行更新并添加以下行,因此该操作尚不可用:

$config['base_url'] = "http://" . $_SERVER["SERVER_NAME"] . ":".$_SERVER["SERVER_PORT"] . "/observium/";

(请注意结尾的/

更新:上面的过程缺少最后一个更改: (来源:http://www.foobar.org/~nick/OBSERVIUM-11.html) 编辑文件/opt/observium/html/includes/functions.inc.php并更改以下行:

$segments = explode('/', trim($_SERVER['REQUEST_URI'], '/'));
to:
$segments = explode('/', trim($_SERVER['PATH_INFO'], '/'));

答案 1 :(得分:0)

有点奇怪的是,在标题中你知道它是一个&#34;别名&#34;但你没有提到使用Alias指令。

应该像

一样简单
Alias /observium  /opt/observium/html
<Directory  /opt/observium/html/>
  Require all granted
</Directory>