Способ запустить django devserver от пользователя и заставить его отвечать по порту 80.
In some cases we need to make devserver to answer on local domain address with standart http port 80. Linux don't allow to user to use ports below 1024.
The way to do that is not trivial, but simple. At first, make changes to /etc/hosts127.0.0.1 ourdomain.com
Tha point is that we need to redirect http requests to django from classic devserver's 8000 port to standart http port # 80. Simpliest way to me is to using xinetd.
sudo yum install xinetd -y
Create rule in /etc/xinetd.d
sudo vi /etc/xinetd.d/8000-to-80-redirect
Fill it:
service 8000-to-80-redirect
{
type = UNLISTED
disable = no
socket_type = stream
protocol = tcp
user = root
wait = no
port = 80
redirect = 127.0.0.1 8000
log_type = FILE /tmp/8000-to-80-redirect.log
}
Enable and run xinetdsudo systemctl enable xinetd sudo systemctl start xinetd
Check:
sudo systemctl status xinetd
Run django server (redundancy to see teh Magic):
django-admin.py runserver 127.0.0.1:8000
Type in browser
ourdomain.com
Enjoy! :)