Jump to content
Froxlor Forum
  • Similar Content

    • By Simon Yeldon
      I am having a little bit of problem getting Froxlor set up properly, with all domains that I create giving a 403 error when you access the site via http.
      I am set up using the following config
      ubuntu 18.04 lts apache 2.4.29 php 7.2 php-fpm mod_proxy_fcgi libnss-extrausers I have followed all the steps, and I think I have the correct boxes ticked, but I am obviously missing something somewhere along the lines. Any pointer in the right direction would be great.
      When you go to the domain http://test.bearandbox.uk you get a 403 error with the following message
      Forbidden You don't have permission to access / on this server. Server unable to read htaccess file, denying access to be safe Apache/2.4.29 (Ubuntu) Server at test.bearandbox.uk Port 80 The logs give the following error
      When I add a domain I get the following config in sites-available
      <VirtualHost 167.99.95.176:80 [2a03:b0c0:1:e0::44a:1001]:80> ServerName test.bearandbox.uk ServerAdmin simon@bearandbox.uk DocumentRoot "/var/customers/webs/bearbox/test.bearandbox.uk/" <FilesMatch \.(php)$> SetHandler proxy:unix:/var/lib/apache2/fastcgi/1-bearbox-test.bearandbox.uk-php-fpm.socket|fcgi://localhost </FilesMatch> <Directory "/var/customers/webs/bearbox/test.bearandbox.uk/"> Require all granted AllowOverride All </Directory> Alias /webalizer "/var/customers/webs/bearbox/webalizer" LogLevel warn ErrorLog "/var/customers/logs/bearbox-error.log" CustomLog "/var/customers/logs/bearbox-access.log" combined </VirtualHost> The file at /var/lib/extrausers looks like this
      bearbox:x:10000:10000:Simon Yeldon:/var/customers/webs/bearbox/:/bin/false the file in the php-fpm pool looks like this
      ;PHP-FPM configuration for "test.bearandbox.uk" created on 2019.05.21 10:30:01 [test.bearandbox.uk] listen = /var/lib/apache2/fastcgi/1-bearbox-test.bearandbox.uk-php-fpm.socket listen.owner = bearbox listen.group = bearbox listen.mode = 0660 user = bearbox group = bearbox pm = static pm.max_children = 1 pm.max_requests = 0 ;chroot = /var/customers/webs/bearbox/test.bearandbox.uk/ security.limit_extensions = .php env[PATH] = /usr/local/bin:/usr/bin:/bin env[TMP] = /var/customers/tmp/bearbox/ env[TMPDIR] = /var/customers/tmp/bearbox/ env[TEMP] = /var/customers/tmp/bearbox/ php_admin_value[session.save_path] = /var/customers/tmp/bearbox/ php_admin_value[upload_tmp_dir] = /var/customers/tmp/bearbox/ php_admin_flag[allow_call_time_pass_reference] = Off php_admin_flag[allow_url_fopen] = Off php_flag[asp_tags] = Off php_admin_value[disable_classes] = php_admin_value[disable_functions] = curl_exec,curl_multi_exec,exec,parse_ini_file,passthru,popen,proc_close,proc_get_status,proc_nice,proc_open,proc_terminate,shell_exec,show_source,system php_flag[display_errors] = Off php_flag[display_startup_errors] = Off php_admin_flag[enable_dl] = Off php_value[error_reporting] = E_ALL & ~E_NOTICE php_admin_flag[expose_php] = Off php_admin_flag[file_uploads] = On php_admin_flag[cgi.force_redirect] = 1 php_admin_value[gpc_order] = "GPC" php_flag[html_errors] = Off php_admin_flag[ignore_repeated_errors] = Off php_admin_flag[ignore_repeated_source] = Off php_value[include_path] = ".:/usr/share/php/:/usr/share/php5/" php_flag[log_errors] = On php_admin_flag[log_errors] = On php_value[log_errors_max_len] = 1024 php_flag[magic_quotes_gpc] = Off php_flag[magic_quotes_runtime] = Off php_flag[magic_quotes_sybase] = Off php_value[max_execution_time] = 30 php_admin_value[max_input_time] = 60 php_admin_value[memory_limit] = 128M php_admin_value[open_basedir] = "/var/customers/webs/bearbox/test.bearandbox.uk:/var/customers/tmp/bearbox:/usr/share/php:/usr/share/php5:/tmp" php_admin_value[output_buffering] = 4096 php_admin_value[post_max_size] = 16M php_admin_value[precision] = 14 php_admin_flag[register_argc_argv] = Off php_admin_flag[report_memleaks] = On php_admin_value[sendmail_path] = "/usr/sbin/sendmail -t -i -f simon@bearandbox.uk" php_value[session.auto_start] = 0 php_value[session.cookie_domain] = php_value[session.cookie_lifetime] = 0 php_value[session.cookie_path] = / php_admin_value[session.gc_divisor] = 1000 php_admin_value[session.gc_probability] = 1 php_value[session.name] = PHPSESSID php_value[session.serialize_handler] = php php_flag[session.use_cookies] = 1 php_flag[short_open_tag] = On php_flag[suhosin.simulation] = Off php_flag[track_errors] = Off php_value[upload_max_filesize] = 32M php_admin_value[variables_order] = "GPCS" php_admin_value[opcache.restrict_api] = "/var/customers/webs/bearbox/test.bearandbox.uk/" If I un-comment the chroot line, it works...
      How do I fix this?
    • By irisdina
      Warning, this is not an official guide!!!
      1.
      sudo mv /etc/apt/source.list /etc/apt/source.list.bak 1a. Create new Source.list
      sudo nano /etc/apt/source.list 1b.  insert (for Debian Stretch)
      1.2B (for Ubuntu Cosmic)
       
      1c. 
      sudo apt update && sudo apt dist-upgrade && sudo apt autoclean && sudo apt autoremove 1d. 
      sudo apt install curl wget apt-transport-https dirmngr git software-properties-common Now you can start setting up your server
      2. MariaDB install
      Warning use sudo command für this install!
      sudo apt install mariadb-server mariadb-client 2a. MariaDB 10.3 Workround (Optional)
      3. nginx install
      sudo apt install nginx 3a. 
      mkdir /etc/nginx/sites-available mkdir /etc/nginx/sites-enabled 3b. nano /etc/nginx/nginx.conf
      4. PHP install
      sudo apt-get -y install php7.3-fpm php7.3-mysql php7.3-curl php7.3-gd php7.3-intl php-pear php-imagick php7.3-imap php-memcache php7.3-pspell php7.3-recode php7.3-sqlite3 php7.3-tidy php7.3-xmlrpc php7.3-xsl php7.3-mbstring php-gettext php7.3-mysql php7.3-curl php7.3-gd php7.3-intl php-pear php-imagick php7.3-imap php-memcache php7.3-memcached php7.3-pspell php7.3-recode php7.3-sqlite3 php7.3-tidy php7.3-xmlrpc php7.3-xsl php7.3-mbstring php-gettext php7.3-fpm php7.3-cli php7.3-cgi php-bcmath php-zip php7.3-fpm php7.3-curl php7.3-gd php7.3-mysql php7.3-mbstring php7.3-zip php7.3-bcmath zip unzip 4a. 
      sudo service nginx restart sudo service php7.3-fpm restart Froxlor install
      There are two ways to get Froxlor. Stable (wget) and Beta Build (git / Master)
      Stable Version
      1. 
      cd /var/www/html/ 1a. 
      sudo https://files.froxlor.org/releases/froxlor-latest.tar.gz && sudo tar xzfv froxlor-latest.tar.gz or
      Git Version (Beta Version)
      sudo git clone https://github.com/Froxlor/Froxlor.git && sudo chown -HR www-data:www-data Froxlor/ sudo apt install composer  su - www-data -s /bin/bash cd /var/www/html/Froxlor/ 1a(2). Composer install in your Froxlor directory
      composer install --no-dev 1b. 
      sudo chown -R www-data:www-data Froxlor/ Set up Froxlor
      2. Open Your Browser
      2a.
      http://your IP or Hostname/Froxlor
       

      Install Froxlor finish
       3d. Move userdata (Optional) 
      sudo mv /tmp/userdata.inc.php /var/www/html/Froxlor/lib/ 2c. 
      sudo rm /etc/nginx/site-enable/default don't restart nginx!
      Froxlor Settings
      1. Cronjob
      sudo nano /etc/cron.d/froxlor insert 
      # # Set PATH, otherwise restart-scripts won't find start-stop-daemon # PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin # # Regular cron jobs for the froxlor package # # Please check that all following paths are correct # */5 * * * * root /usr/bin/nice -n 5 /usr/bin/php -q /var/www/html/Froxlor/scripts/froxlor_master_cronjob.php sudo chmod 0640 "/etc/cron.d/froxlor" sudo chown root:0 "/etc/cron.d/froxlor" sudo service cron restart 2. Nginx PHP Backend
      Settings > Webserver settings > Nginx PHP backend
      from 127.0.0.1:8888 to unix:/run/php/php7.3-fpm.sock
      3. 
      sudo mkdir -p /var/customers/webs/ sudo mkdir -p /var/customers/logs/ sudo mkdir -p /var/customers/tmp sudo chmod 1777 /var/customers/tmp sudo service nginx restart 4. IPs and Ports > Add IP/Port

      2a(1), SSL Port



      Wait 5min for Autimatic Start Froxlor's cronjob or start the cronjob manually
      sudo php /var/www/html/Froxlor/scripts/froxlor_master_cronjob.php --force --debug Optional
      PHP-FPM activate
      1. User/Group add
      sudo adduser froxlorlocal --disabled-password --no-create-home && sudo usermod -a -G www-data froxlorlocal 2. libnss-extrausers install 
      sudo apt install nscd libnss-extrausers sudo mkdir -p /var/lib/extrausers sudo touch /var/lib/extrausers/{passwd,group,shadow} sudo mv "/etc/nsswitch.conf" "/etc/nsswitch.conf.frx.bak" sudo nano /etc/nsswitch.conf # Make sure that `passwd`, `group` and `shadow` have mysql in their lines # You should place mysql at the end, so that it is queried after the other mechanisams # passwd: compat extrausers group: compat extrausers shadow: compat extrausers hosts: files dns networks: files dns services: db files protocols: db files rpc: db files ethers: db files netmasks: files netgroup: files bootparams: files automount: files aliases: files sudo service nscd restart sudo nscd --invalidate=group 2a. Settings > System settings > Activate > Use libnss-extrausers instead of libnss-mysql

      3. Settings > PHP-FPM > Activated:
      Change from NO to YES
      3a. PHP-FPM versions
      Change > php-fpm restart command:
      service php7.3-fpm restart and
      Configuration directory of php-fpm: > to 
      /etc/php/7.3/fpm/pool.d/ 3b. Settings > Froxlor VirtualHost settings > Activate > Enable PHP-FPM for the Froxlor vHost

      3c. 
      sudo chown -HR froxlorlocal:froxlorlocal /var/www/html/Froxlor SSL / Let's Encrypt activate
      1.
      sudo apt install certbot 1a. 
      sudo mkdir /etc/nginx/ssl && cd /etc/nginx/ssl 1b. Create SSL File
      sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/nginx/ssl/nginx.key -out /etc/nginx/ssl/nginx.crt 1c. 
      sudo nano /etc/nginx/acme.conf insert
      location /.well-known/acme-challenge { alias /var/www/html/Froxlor/.well-known/acme-challenge; location ~ /.well-known/acme-challenge/(.*) { default_type text/plain; } }  
      2. Open your  Froxlor Panel
      Settings> SSL > Activated:
      Change from NO to YES
      2a. Settings > SSL > Settings
      Change your path from your certificate / Keyfile
      Path to the SSL certificate
      insert
      /etc/nginx/ssl/nginx.crt Path to the SSL Keyfile
      insert
      /etc/nginx/ssl/nginx.key 2b. Settings > SSL > Settings
      Activate > Enable Let's Encrypt

      Change Path to the acme.conf snippet to > 
      /etc/nginx/acme.conf 2c. Activate on Settings > Froxlor VirtualHost settings
      - Enable Let's Encrypt for the froxlor vhost
      - Enable SSL-redirect for the froxlor vhost
      - HTTP Strict Transport Security (HSTS)
      - Include HSTS for any subdomain






      2d. Activated HTTP2 Support on > Settings > Nginx
       
    • By DavidCK
      Hello,
      I've been getting database connection errors on my websites for more than week. I got this error:
      froxlor[3673]: SQLSTATE[HY000] [2002] Connection refused
      froxlor[3673]: --- DEBUG: #0 /var/www/froxlor/lib/classes/database/class.Database.php(297): PDO->__construct('mysql:d                                                                                                                        
      bname=st...', 'stuser', 'DB_UNPRIV_PWD...', Array) #1 /var/www/froxlor/lib/classes/database/class.Database.php(183):                                                                                                                         Database::getDB() #2 /var/www/froxlor/lib/cron_init.php(92): Database::__callStatic('query', Array) #3 /var/www/froxl                      or/scripts/froxlor_master_cronjob.php(20): include_once('/var/www/froxlo...') #4 {main}
       
      I've solved them with this command: sevice mariadb restart. However, I found today that the databases which my customers created are not working. For example, I ran a fresh wordpress installation today and the database created by customers is not connecting to complete the installation.

       
      Any guess?
      I appreciate your help. 
    • By princeofnaxos
      Wenn running "froxlor_master_cronjob.php -- tasks", it produces this error at the end:
      sh: 1: /etc/init.d/php-fpm: not found
      On Debian Stretch with PHP 7.2, this should be "/etc/init.d/php7.2-fpm". Is this a configuration setting? I can't find it.
×
×
  • Create New...