本地搭建readthedocs服务时指定自定义端口的坑

默认情况下直接运行

1
python manage.py runserver

可以正常使用,但是一旦指定端口号运行,在build文档时就会挂在已触发的状态上

1
python manage.py runserver 172.16.1.2:8001

QQ20180616-164156

终端可以看到,明明api有数据返回,但是提示404

QQ20180616-164511

回头重新查看官方文档,上面说道可以通过在local_settings.py中指定production_domain, 开始尝试在local_settings.py 中只配置这一项发现问题依旧,去掉命令行上的端口指定,只保留配置文件中的配置也不行。最后各种尝试后的结论是local_settings.py需要配置以下三项。且后两项的http://不能少,命令行上的端口指定也必须保留。

1
2
3
4
5
6
7
8
9
10
11
import os

# Set this to the root domain where this RTD installation will be running
PRODUCTION_DOMAIN = '172.16.1.2:8001'

SLUMBER_API_HOST = 'http://172.16.1.2:8001'

PUBLIC_API_URL = 'http://172.16.1.2:8001'

# Enable private Git doc repositories
# ALLOW_PRIVATE_REPOS = True

&

1
python manage.py runserver 172.16.1.2:8001