我关注了How To Deploy a Flask Application on an Ubuntu VPS
和 How To Install the Apache Web Server on Ubuntu 20.04
来自我的主机所在的 Digital Ocean。我设置了两个 A 类 DNS 记录,其中主机名是我的带有 www 的 URL,而我的 URL 是没有它的 URL,它们直接指向我的公共(public) IP 的值。
我可以通过将 ServerName 更改为我的公共(public) IP、带有 www 的网站或不带 www 的网站来更改显示正确信息的地址。我怎样才能做到www.mywebsite.com和 mywebsite.com 都正确显示?重定向肯定不是正确的答案吗?
这是 conf 文件:/etc/apache2/sites-available/FlaskApp.conf
<VirtualHost *:80>
ServerName www.mywebsite.com
ServerAdmin admin@mywebsite.com
WSGIScriptAlias / /var/www/FlaskApp/flaskapp.wsgi
<Directory /var/www/FlaskApp/FlaskApp/>
Order allow,deny
Allow from all
</Directory>
Alias /static /var/www/FlaskApp/FlaskApp/static
<Directory /var/www/FlaskApp/FlaskApp/static/>
Order allow,deny
Allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
我尝试添加一个永久重定向它不起作用。<VirtualHost *:80>
ServerName www.mywebsite.com
Redirect permanent / http://mywebsite.com/
ServerAdmin admin@mywebsite.com
WSGIScriptAlias / /var/www/FlaskApp/flaskapp.wsgi
<Directory /var/www/FlaskApp/FlaskApp/>
Order allow,deny
Allow from all
</Directory>
Alias /static /var/www/FlaskApp/FlaskApp/static
<Directory /var/www/FlaskApp/FlaskApp/static/>
Order allow,deny
Allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
最佳答案
对于其他有此问题的人,我通过添加服务器别名找到了解决方案:
<VirtualHost *:80>
ServerName www.mywebsite.com
ServerAlias mywebsite.com
ServerAdmin admin@mywebsite.com
WSGIScriptAlias / /var/www/FlaskApp/flaskapp.wsgi
<Directory /var/www/FlaskApp/FlaskApp/>
Order allow,deny
Allow from all
</Directory>
Alias /static /var/www/FlaskApp/FlaskApp/static
<Directory /var/www/FlaskApp/FlaskApp/static/>
Order allow,deny
Allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
关于apache - 我的带有 www 的网站 URL 显示了正确的内容,但显示了没有 www 的 Apache2 Ubuntu 默认页面。我该如何纠正?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70687883/