我正在使用 Open Suse。我对它和 Web 服务器(以及 StackOverFlow 也是)很陌生。
etc 目录中有一个 apache2,xyz.xyz.xyz 返回“It works!”。xyz.xyz.xyz:5000 当前还返回一个网页。我已经修改了页面并想托管它。
问题:如何配置 apache 服务器来为我创建一个端口?我需要修改哪些文件(httpd.conf?)?我需要超级用户访问权限吗?谢谢
OpenSUSE 的配置文件可能有不同的布局,但您正在寻找的是一个VirtualHost
设置为读取端口 5000 的指令。(Apache docs on VirtualHost
s)
这可能在里面httpd.conf
,也可能在另一个文件里面/etc/apache2
,它也以.conf
. 您会发现端口 5000 设置类似于:
<VirtualHost *:5000>
DocumentRoot /path/to/index/dir
... Other stuff...
</VirtualHost>
要创建一个在不同于 5000 的端口上侦听的 VirtualHost,只需复制整个<VirtualHost>...</VirtualHost>
块并更改端口号和DocumentRoot
指向文件系统上将保存其他 vhost 文件的位置。您还需要一个Listen *:port_number
指令来使 Apache 接管该端口。
例如,要在 5001 上添加虚拟主机,请执行以下操作:
# Instructs apache to use this port
Listen *:5001
# Instructs apache to route requests on this port to a specific directory
<VirtualHost *:5001>
DocumentRoot /path/to/index/dir
... Other stuff...
</VirtualHost>
在此之后您将需要重新启动 Apache。
/etc/init.d/apache2 restart
请注意,您需要超级用户访问权限才能修改 httpd.conf 文件并重新启动 Apache。
如果要在端口 1024 以下运行服务,则需要具有 root 权限。正如 MIchael 的回答一样,当您在端口 5001 上运行服务时,您不需要 root 访问权限