nginx – 如何在debian服务器的子文件夹中加载Sphinx文档

我对Sphinx方面很陌生.我已经在Sphinx官方文档站点上阅读了一些有关它的内容,我已按照这些步骤进行安装并在我的debian wheezy服务器上进行配置:

>首先,我在http://example.com/documentation-path/上安装了Sphinx源代码.

pip install sphinx

>我已经执行了脚本sphinx-quickstart来配置根目录和conf.py.

sphinx-quickstart

>我已经在我的目录路径中为build html文件执行了make html命令.

make html

>我已经安装了sphinx autobuild用于处理每一个
我的文档的更改/更新,如@ toast38coza中的post所述.

pip install sphinx-autobuild

sphinx-autobuild source build/html

[我已经修复了]

我的第一个问题是我无法正确查看文档索引模板,因为服务器开始在http://127.0.0.1:8000(localhost at port 8000)上查看文档文件的更改.因此,当我在当前的PC上本地安装它时,我获得了与我期望的相同的url路径.正如我在本地版本测试中说的,它运行良好.

因为我正在搜索类似于url路径配置(http://example.com)的东西,所以我决定将参数添加为-host和-port以使其在debian上正常工作:

-p/–port option to specify the port on which the documentation shall be served (default 8000)
-H/–host option to specify the host on which the documentation shall be served (default 127.0.0.1)

然后我配置它,启动它,它工作正常:

>> sphinx-autobuild source build/html --host http://example.com --port8000 

所以现在如果我冲浪http://example.com:8000
我得到了文档索引模板的正确视图.

[我的主要问题]

如何在不同的url路径上启动此视图,例如像http://example.com/documentation-path/这样的子文件夹,即使考虑到Sphinx安装的根路径是/ documentation-path /?

[我的第二个问题]

我怎样才能自动化可视化模板视图的过程,而无需每次在debian控制台上使用–port和–host指令sphinx-autobuild进行编写?

[重要的提醒]

此时debian服务器配置了NGINX,这对我来说是全新的.

最佳答案 最后,我在 NGINX documentation的帮助下自己解决了子文件夹路径问题.

location /documentation {
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_pass http://localhost:8000;
    index index.php index.html index.htm;
}

关于自动加载问题,我刚从Sphinx切换到Markdown,之后我使用couscousPHP从markdown文档生成GitHub页面网站.

这对我来说是每次从ssh控制台获取源时提供静态html文件而不自动加载的更明智的方法.事实上,我可以从.md文件中轻松生成我的转换html文件,输入命令couscous generate.

点赞