gpt4 book ai didi

ubuntu - Apache 配置不同的主机应用程序使用相同的 IP 和相同的端口

转载 作者:行者123 更新时间:2023-12-04 18:59:13 24 4
gpt4 key购买 nike

比如我有一个外网ip118.16.132.42和80端口
flask1和flask2项目应用部署在/var/www,
我想通过不同的应用名称进入不同的项目应用
比如118.16.132.42:80/flask1到flask1和118.16.132.42:80/flask2到flask2的应用能否实现
这是申请路径

/var/www/flask1
/var/www/flask2

最佳答案

当您在 Web 服务器上托管多个站点时,最好的方法是为您要发布的每个站点正确设置虚拟主机文件。这意味着当有人查看您的站点时,请求将传送到服务器,反过来,它将根据域名确定要提供哪个站点的文件。
正如我所见,您已经为要部署的每个应用程序创建了一个目录,并且我假设您的应用程序已经存储在这些目录中,所以您已经完成了第一步。

/var/www/flask1
/var/www/flask2
下一步是为每个网站创建一个配置文件并将其存储在 /etc/apache2/sites-available/ 中。 .在这个目录下 Apache 有一个默认配置文件 named 000-default.conf您可以使用它来创建自己的配置:
cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/flask1.com.conf

cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/flask2.com.conf
为每个站点创建配置文件后,您只需使用 ServerName 编辑此文件即可。和 DocumentRoot ,它应该指向你的应用程序将被存储的目录。
vim /etc/apache2/sites-available/flask1.com.conf

<VirtualHost *:80>
ServerAdmin admin@example.com
ServerName flask1.com
ServerAlias www.flask1.com
DocumentRoot /var/www/flask1
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
最后一步是启用您为 flask1.com.conf 创建的配置文件。和 flask2.com.conf因此您的服务器将映射到您的域
a2ensite flask1.com.conf
a2ensite flask2.com.conf
重新启动 Apache 服务器
systemctl restart apache2
笔记
As per Apache official documentation ,在您的 Apache 服务器上创建虚拟主机配置不会神奇地导致为这些主机名创建 DNS 条目。您必须拥有 DNS 中的名称,解析为您的 IP 地址,否则其他人将无法看到您的网站。您可以将条目放在主机文件中以进行本地测试,但这仅适用于具有这些主机条目的机器。

关于ubuntu - Apache 配置不同的主机应用程序使用相同的 IP 和相同的端口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68598283/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com