如何为OpenCPU应用设置域名?

时间:2019-05-25 08:54:01

标签: opencpu

我有一台运行OpenCPU的Ubuntu 18.4 LTS服务器,并且能够通过将浏览器指向地址myapp来运行该应用程序http://myip/ocpu/library/myapp/www/。我希望通过域名mydomain.name使该应用程序可用,并已将DNS记录设置为指向myip

在服务器端,我创建了一个文件/etc/apache2/sites-available/myapp.conf,看起来像

<VirtualHost *:80>
    ServerName mydomain.name
    DocumentRoot /ocpu/lib/myapp/www
    LogLevel info
    ErrorLog /var/log/myapp/apache_error.log
    CustomLog /var/log/myapp/apache_access.log combined
</VirtualHost>

但是,sudo systemctl reload apache2引发错误,因为它找不到documentRoot /ocpu/lib/myapp/www。实际上,服务器上没有目录ocpu

我怀疑我需要在.conf中设置一个/etc/opencpu/server.conf.d文件,但是这些文件的结构看起来与上面给出的myapp.conf有很大不同,并且我看不到ServerName的条目。

如何将mydomain.name重定向到http://myip/ocpu/library/myapp/www/

1 个答案:

答案 0 :(得分:3)

如果可以通过http://myip/ocpu/library/myapp/www/访问该站点,但应该通过http(s)://mydomain.name访问该站点,则只需在apache2配置中创建一个代理条目,如下所示:

<VirtualHost *:80>
    ServerName mydomain.name

    ProxyPreserveHost On
    ProxyPass "/" "http://myip/ocpu/library/myapp/www/"
</VirtualHost>

注意:您可能必须启用代理模块:sudo a2enmod proxysudo a2enmod proxy_http

这将为http://myip/ocpu/library/myapp/www/上的mydomain.name网站提供服务。

在编辑配置并启用模块后,请确保重新启动apache2(sudo service apache2 restart)。

来源: https://www.digitalocean.com/community/tutorials/how-to-use-apache-http-server-as-reverse-proxy-using-mod_proxy-extension