open edX Ironwood平台nginx配置
open edX默认安装完成后,访问时学生端是ip或域名,教师端是ip或域名+18010端口访问,这样使用起来很不友好,如何让学生端和教师端都可以用域名访问,譬如学生端为s.example.com,教师端为t.example.com,这样就友好很多,接下来我们来介绍一下如何配置让学生端和教师端都是支持域名访问。
open edX对外服务使用的nginx代理,对熟悉nginx的同学这个操作很简单了。open edX的nginx的站点配置文件在/edx/app/nginx/sites-available目录下,配置文件目录如下:
- analytics_api #open edX数据分析配置文件
- certs #open edX证书配置文件
- cms #open edX教师端配置文件
- discovery #open edX搜索配置文件
- ecommerce #open edX电子商务配置文件
- forum #open edX论坛配置文件
- lms #open edX学生端配置文件
这里我们主要修改两个配置文件,cms-教师端站点配置文件 lms-学生端站点配置文件。
nginx默认站点为lms就学生端站点,所以只要域名解析到服务器的ip上就可以访问学生端。例如把s.example.com解析到指定的IP上,解析生效后就可以访问open edX的学生端了。
把t.example.com解析到教师端:使用vi或vim命令(vi或vim命令说明)打开cms,绝对路径操作命令如下:
1 |
vi /edx/app/nginx/sites-available/cms |
找到大约25行左右,进入编辑模式把内容改成如下图所示:

退出编辑模式,保存并退出。重启载入nginx配置,使刚才修改生效,命令如下:
1 |
/etc/init.d/nginx reload |
运行脚本,返回如下:
1 |
[ ok ] Reloading nginx configuration (via systemctl): nginx.service. |
说明nginx配合重新载入成功,可以通过t.example.com访问教师端了。
