PHP backup server

#24
pull/27/head
Szekeres Bálint 2018-11-02 14:24:32 +01:00
parent 83a28ee6dc
commit 6d590c6e1c
5 changed files with 37 additions and 6 deletions

View File

@ -45,11 +45,12 @@ Online nginx configuration generator.
### PHP
* PHP
* PHP connection
* PHP server
* TCP
* HHVM socket
* 5.x socket
* 7.x socket
* PHP backup server
* WordPress security essentials
* Drupal security essentials

View File

@ -64,7 +64,8 @@
fallback_php_path: '/api/',
php: true,
php_connection: '/var/run/php/php7.2-fpm.sock',
php_server: '/var/run/php/php7.2-fpm.sock',
php_server_backup: '',
wordpress: false,
drupal: false,
@ -452,6 +453,10 @@
return $scope.data.php;
};
$scope.isPHPBackup = function() {
return $scope.isPHP() && !!$scope.data.php_server_backup;
};
$scope.isWordPress = function() {
return $scope.isPHP() && $scope.data.wordpress;
};

View File

@ -380,10 +380,28 @@
</div>
<div class="form-group row" ng-if="isPHP()">
<label class="col-sm-3 col-form-label col-form-label-sm">
PHP connection
PHP server
</label>
<div class="col-sm-9">
<select class="custom-select form-control-sm" ng-model="data.php_connection" ng-class="{ 'input-changed': data.php_connection !== defaultData.php_connection }">
<select class="custom-select form-control-sm" ng-model="data.php_server" ng-class="{ 'input-changed': data.php_server !== defaultData.php_server }">
<option value="127.0.0.1:9000">TCP: 127.0.0.1:9000</option>
<option value="/var/run/hhvm/sock">HHVM socket: /var/run/hhvm/sock</option>
<option value="/var/run/hhvm/hhvm.sock">HHVM socket: /var/run/hhvm/hhvm.sock</option>
<option value="/var/run/php5-fpm.sock">5.x socket: /var/run/php5-fpm.sock</option>
<option value="/var/run/php/php7.0-fpm.sock">7.0 socket: /var/run/php/php7.0-fpm.sock</option>
<option value="/var/run/php/php7.1-fpm.sock">7.1 socket: /var/run/php/php7.1-fpm.sock</option>
<option value="/var/run/php/php7.2-fpm.sock">7.2 socket: /var/run/php/php7.2-fpm.sock</option>
<option value="/var/run/php/php7.3-fpm.sock">7.3 socket: /var/run/php/php7.3-fpm.sock</option>
</select>
</div>
</div>
<div class="form-group row" ng-if="isPHP()">
<label class="col-sm-3 col-form-label col-form-label-sm">
PHP backup server
</label>
<div class="col-sm-9">
<select class="custom-select form-control-sm" ng-model="data.php_server_backup" ng-class="{ 'input-changed': data.php_server_backup !== defaultData.php_server_backup }">
<option value="">disabled</option>
<option value="127.0.0.1:9000">TCP: 127.0.0.1:9000</option>
<option value="/var/run/hhvm/sock">HHVM socket: /var/run/hhvm/sock</option>
<option value="/var/run/hhvm/hhvm.sock">HHVM socket: /var/run/hhvm/hhvm.sock</option>

View File

@ -8,7 +8,14 @@ events {
worker_connections 65535;
}
http {
http {<!--
✔ PHP backup --><span ng-if="isPHPBackup()">
upstream php {
server {{ data.php_server[0] === '/' ? 'unix:' : '' }}{{ data.php_server }};
server {{ data.php_server_backup[0] === '/' ? 'unix:' : '' }}{{ data.php_server_backup }} backup;
}
</span>
charset utf-8;
sendfile on;
tcp_nopush on;

View File

@ -1,7 +1,7 @@
try_files $uri =404;
# fastcgi
fastcgi_pass {{ data.php_connection[0] === '/' ? 'unix:' : '' }}{{ data.php_connection }};
fastcgi_pass {{ !isPHPBackup() ? ((data.php_server[0] === '/' ? 'unix:' : '') + data.php_server) : 'php' }};
fastcgi_index index.php;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;