小描述:将端口 5000 重定向到子域
描述:嗯,我有一个程序,“主管”,它有一个OSRM(开放街道路线图),它正在运行端口 5000,我想将该端口重定向到子域 例如.mywebsite.com,全部使用 Apache
我的 SO:是 Ubuntu 14.04.4 LTS
Apache 版本:Apache/2.4.7(Ubuntu)
我为每个子域名都有一个文件:/etc/apache2/sites-available/
我想要一个可以解决我的问题的文件...
我不知道该怎么做。这会对其他人有所帮助,我正在做一个使用 apache 安装 nominatim 和 osrm 的教程...
答案1
你已经运行了该服务端口 5000,你想显示,代理你的服务在127.0.0.1:5000 或mywebsite.com:5000到子域名或类似域名osrm.mywebsite.com 或者myosrmwebsite.com
你需要在 Apache2 中启用 mod_proxy首先。因此,请以 root 或 sudo 身份运行以下命令:
a2enmod proxy
a2enmod proxy_http
编辑您的 hosts 文件
# if you don't have access try with sudo
nano /etc/hosts
将条目添加到您的 hosts 文件
# path /etc/hosts
127.0.0.1 subdomainname.mywebsite.com
87.164.25.1 subdomainname.mywebsite.com
这87.164.25.1
是 IP 公共的一个例子,它不是真实的
在这之后我们需要去 /etc/apache2/sites-available
cd /etc/apache2/sites-available
创建文件 *.conf对于我们的子域名或域名
nano subdomainname.mywebsite.com.conf
在这个文件中,我们将创建一个配置来代理我们的端口到服务器名
#filename 'subdomainname.mywebsite.com.conf'
#dir /etc/apache2/sites-available
<VirtualHost *:80>
ServerName osrm.website.com # my subdomain or website name server
ProxyPass / http://localhost:5000/
ProxyPassReverse / http://localhost:5000/
ProxyRequests Off
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
笔记:如果您尝试通过 url 查看网站,但没有任何反应,请尝试更改<VirtualHost *:80>
为<VirtualHost 87.164.25.1:80>
服务器的 ip。
使用此命令将*.conf文件添加到apache,并检查命令列表。
启用它
sudo a2ensite subdomainname.mywebsite.com.conf
禁用它
sudo a2dissite subdomainname.mywebsite.com.conf
列出所有站点
# if you want to know what sites are enables.. or check if it is enable
apache2ctl -S
重新加载 Apache 或重新启动
# only reload the config files without restart
sudo service apache2 reload
# restart apache
sudo service apache2 restart
参考网站
- 如何在 Ubuntu Server 14.04 上设置子域名
- 获取所有 apache 配置文件中定义的所有虚拟主机的列表
- 代理端口到站点 - 示例 1 - https://serverfault.com/a/140161
- 代理端口到站点 - 示例 2 - http://freedif.org/how-to-redirect-a-port-to-a-sub-domain-proxypass/
- 代理端口到站点 - 示例 3 - https://stackoverflow.com/a/8442270/5287072
- 代理端口到站点 - 示例 4 - https://stackoverflow.com/a/589479/5287072
*如果由于某种原因失败了,我会添加标题和网址......