Apache 为端口创建别名

Apache 为端口创建别名,apache,dns,alias,virtualhost,Apache,Dns,Alias,Virtualhost,我真的不知道如何解决这个问题。我需要在地址上加载页面 当我只有一个IP地址时,如何在Apache上设置VirtualHost或Alias 非常感谢 现在我只想说: ports.conf: NameVirtualHost domain.com:80 NameVirtualHost sub.domain.com:80 Listen *:80 <IfModule mod_ssl.c> Listen *:443 </IfModule> <IfModule mo

我真的不知道如何解决这个问题。我需要在地址上加载页面

当我只有一个IP地址时,如何在Apache上设置VirtualHost或Alias

非常感谢


现在我只想说:

ports.conf:

NameVirtualHost domain.com:80
NameVirtualHost sub.domain.com:80
Listen *:80

<IfModule mod_ssl.c>
    Listen *:443
</IfModule>

<IfModule mod_gnutls.c>
    Listen *:443
</IfModule>
nameVirtualHostDomain.com:80
NameVirtualHost sub.domain.com:80
听*:80
听*:443
听*:443
…/可用站点/默认值:

<VirtualHost domain.com:80>
        ServerAdmin admin@domain.com
        ServerName domain.com
        DocumentRoot /var/www
        ...
</VirtualHost>

<VirtualHost sub.domain.com:80>
        ServerAdmin admin@domain.com
        ServerName sub.domain.com
        ProxyPass / http://www.domain.com:12345/
        ProxyPassReverse / http://www.domain.com:12345/
</VirtualHost>

服务器管理员admin@domain.com
ServerName域名.com
DocumentRoot/var/www
...
服务器管理员admin@domain.com
ServerName sub.domain.com
ProxyPass/http://www.domain.com:12345/
ProxyPassReverse/http://www.domain.com:12345/

但这不起作用。sub.domain.com返回500个内部服务器错误。

解决方案是虚拟主机:

如果要在服务器上维护多个域/主机名 您可以为它们设置VirtualHost容器。大多数配置 只使用基于名称的虚拟主机,这样服务器就不需要担心 IP地址。这由以下指令中的星号表示

请参阅 在尝试设置虚拟主机之前,请参阅详细信息

您可以使用命令行选项'-S'来验证虚拟主机 配置

下面是一个配置示例:

#
# Use name-based virtual hosting.
#
NameVirtualHost *:80

#
# VirtualHost example:
# Almost any Apache directive may go into a VirtualHost container.
# The first VirtualHost section is used for all requests that do not
# match a ServerName or ServerAlias in any <VirtualHost> block.
#
<VirtualHost *:80>
    ServerAdmin postmaster@dummy-host.localhost
    DocumentRoot "C:/Program Files (x86)/www/htdocs/dummy-host.localhost"
    ServerName dummy-host.localhost
    ServerAlias www.dummy-host.localhost
    ErrorLog "logs/dummy-host.localhost-error.log"
    CustomLog "logs/dummy-host.localhost-access.log" combined
</VirtualHost>

<VirtualHost *:80>
    ServerAdmin postmaster@dummy-host2.localhost
    DocumentRoot "C:/Program Files (x86)/www/htdocs/dummy-host2.localhost"
    ServerName dummy-host2.localhost
    ServerAlias www.dummy-host2.localhost
    ErrorLog "logs/dummy-host2.localhost-error.log"
    CustomLog "logs/dummy-host2.localhost-access.log" combined
</VirtualHost>
#
#使用基于名称的虚拟主机。
#
名称虚拟主机*:80
#
#虚拟主机示例:
#几乎所有Apache指令都可以放入VirtualHost容器中。
#第一个VirtualHost部分用于所有不需要的请求
#在任何块中匹配ServerName或ServerAlias。
#
服务器管理员postmaster@dummy-host.localhost
DocumentRoot“C:/ProgramFiles(x86)/www/htdocs/dummy host.localhost”
ServerName dummy-host.localhost
ServerAlias www.dummy-host.localhost
ErrorLog“logs/dummy host.localhost error.log”
CustomLog“logs/dummy host.localhost access.log”组合
服务器管理员postmaster@dummy-host2.localhost
DocumentRoot“C:/Program Files(x86)/www/htdocs/dummy-host2.localhost”
ServerName虚拟主机2.localhost
ServerAlias www.dummy-host2.localhost
ErrorLog“logs/dummy-host2.localhost error.log”
CustomLog“logs/dummy-host2.localhost access.log”组合

它没有回答OP问题,即如何设置端口重定向?OP还尝试使用VirtualHost解决此问题(如此处所建议),但问题不同。@max您可以定义虚拟主机的端口,如果需要,还可以设置重定向