Apache部署两个django项目,配置1个IP 2个端口 2个项目,为什么每次访问2个端口都指向了同一个端口内容
时间: 2024-09-11 10:02:42 浏览: 30
部署两个Django项目,每个项目配置不同的端口,并通过一个IP进行访问时,如果出现两个端口指向相同内容的情况,通常是因为Apache的配置没有正确区分两个项目。这可能是因为配置文件中的`VirtualHost`指令没有正确设置,或者两个项目的端口号设置错误。
为了解决这个问题,需要确保Apache的配置文件(通常是`httpd.conf`或者在`conf.d`目录下的文件)中,每个项目都正确配置了`VirtualHost`指令,并且每个项目都关联了正确的端口和项目目录。下面是一个基本的配置示例:
```
<VirtualHost *:80>
ServerName example.com
DocumentRoot "/path/to/project1"
WSGIScriptReloading On
WSGIDaemonProcess project1 python-home=/path/to/virtualenv python-path=/path/to/project1
WSGIProcessGroup project1
WSGIScriptAlias / /path/to/project1/wsgi.py
ErrorLog ${APACHE_LOG_DIR}/project1_error.log
CustomLog ${APACHE_LOG_DIR}/project1_access.log combined
</VirtualHost>
<VirtualHost *:8080>
ServerName example.com
DocumentRoot "/path/to/project2"
WSGIScriptReloading On
WSGIDaemonProcess project2 python-home=/path/to/virtualenv python-path=/path/to/project2
WSGIProcessGroup project2
WSGIScriptAlias / /path/to/project2/wsgi.py
ErrorLog ${APACHE_LOG_DIR}/project2_error.log
CustomLog ${APACHE_LOG_DIR}/project2_access.log combined
</VirtualHost>
```
确保`ServerName`或者`ServerAlias`与你的域名或者IP地址匹配,并且每个`VirtualHost`有独立的`DocumentRoot`指向不同的项目目录,同时`WSGIScriptAlias`指向各自项目的`wsgi.py`文件。
还需要确保Apache和WSGI模块(如`mod_wsgi`)已经正确安装和配置。
在完成配置之后,需要重启Apache服务器,以使更改生效。
阅读全文