Jump to content
Froxlor Forum
  • 0

nginx config template



I want to play with nginx directives in the config templates. Where are the template files that are used to create web server virtual hosts?



eg. /etc/nginx/sites-enabled/22_froxlor_normal_vhost_internetmachines.net.conf


# 22_froxlor_normal_vhost_internetmachines.net.conf
# Created 17.04.2013 21:05
# Do NOT manually edit this file, all changes will be deleted after the next domain change at the panel.

server { 
server_name    internetmachines.net *.internetmachines.net;
access_log    /var/customers/logs/im1-access.log combined;


I am running Froxlor on the same machine as a Drupal package called BOA (http://drupal.org/project/boa). BOA does all sorts of things to the system, including adding its own style of nginx configuration. 


Froxlor and BOA don't work together. Nginx doesn't like something - possibly duplicate directives.


Great to see work going ahead here. 


Link to comment
Share on other sites

6 answers to this question

Recommended Posts

well, froxlor is not designed to co-work with other systems playing around in the webserver-configs, if you are able to fix what you need, take a look at scripts/jobs/cron_tasks.inc.http.30.nginx.php


PS: there are no template files...it's all individually generated in the cronfile

Link to comment
Share on other sites

Excellent, thanks. 


I did hit the "Like this" button but I got the message "You have reached your quota of positive votes for the day".


BOA does not play well with others. It is a quick way to get a working nginx/Mariadb/Drupal/Aegir combination, along with other hosting things like csf/lfd. 

Link to comment
Share on other sites

I created a workaround.


problem -

The vhosts with the BOA Drupal system each have a wildcard listen directive. 


server { 
 listen *:80;

All I see is Froxlor sites. My Drupal sites disappear and whatever is in /etc/nginx/sites-enabled is displayed. 


I guess this is because the Froxlor config takes precedence. I guess because nginx looks for exact matches first.  



experiments - 

I navigated to Server > IPs and Ports, and added a new IP and port combination of *:80. Froxlor did not like it. 

I edited the IP/port for and unticked the box for adding a listen directive. It made no difference to the config files.  


solution - 

I edited 


and added # to the three listen statement directive creation statements. That worked. 


Each vhost file now looks like

server { 
# listen;

If listen is missing, nginx defaults to "listen *:80".

Link to comment
Share on other sites

I understand. I want Froxlor to provide Internet administrator control and BOA to provide Drupal administrator control for my small-scale ISP use. It's a pretty narrow use case. 


I am breaking things to remove conflicts between BOA and Froxlor. BOA provides the multi-customer Drupal hosting, but has no Internet administration services built in. Froxlor provides the Internet services control panel. I prefer Froxlor to DTC, ISPConfig, cPanel and so on.


This is my first step towards combining the two -  I want to create a Drupal administration front end to the Froxlor system, split the Froxlor panels into Drupal blocks, combine customer services, add the Drupal commerce modules and so on. 


I don't know if good integration is possible, but I do now have the two hosting systems running on the same machine, serving a few live customers.

Link to comment
Share on other sites


This topic is now archived and is closed to further replies.

  • Create New...