mirror of
https://github.com/digitalocean/nginxconfig.io.git
synced 2025-11-05 10:46:10 +08:00
* Joomla! conf * fix bug escape character & ; * remove global and fix presets } * change requests
This commit is contained in:
49
src/nginxconfig/generators/conf/joomla.conf.js
Normal file
49
src/nginxconfig/generators/conf/joomla.conf.js
Normal file
@@ -0,0 +1,49 @@
|
||||
/*
|
||||
Copyright 2020 DigitalOcean
|
||||
|
||||
This code is licensed under the MIT License.
|
||||
You may obtain a copy of the License at
|
||||
https://github.com/digitalocean/nginxconfig.io/blob/master/LICENSE or https://mit-license.org/
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and / or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions :
|
||||
|
||||
The above copyright notice and this permission notice shall be included in
|
||||
all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
THE SOFTWARE.
|
||||
*/
|
||||
|
||||
export default () => {
|
||||
const config = {};
|
||||
|
||||
config['# Joomla: deny running scripts inside writable directories'] = '';
|
||||
config['location ~* /(images|cache|media|logs|tmp)/.*\\.(php|pl|py|jsp|asp|sh|cgi)$'] = {
|
||||
return: '403',
|
||||
error_page: '403 /403_error.html',
|
||||
};
|
||||
|
||||
config['# Joomla: caching of files'] = '';
|
||||
config['location ~* \\.(ico|pdf|flv)$'] = {
|
||||
expires: '1y',
|
||||
};
|
||||
|
||||
config['# Joomla: caching of files'] = '';
|
||||
config['location ~* \\.(js|css|png|jpg|jpeg|gif|swf|xml|txt)$'] = {
|
||||
expires: '14d',
|
||||
};
|
||||
|
||||
|
||||
// Done!
|
||||
return config;
|
||||
};
|
||||
@@ -36,6 +36,7 @@ import generalConf from './general.conf';
|
||||
import wordPressConf from './wordpress.conf';
|
||||
import drupalConf from './drupal.conf';
|
||||
import magentoConf from './magento.conf';
|
||||
import joomlaConf from './joomla.conf';
|
||||
import letsEncryptConf from './letsencrypt.conf';
|
||||
|
||||
const sslConfig = (domain, global) => {
|
||||
@@ -261,6 +262,7 @@ export default (domain, domains, global) => {
|
||||
if (domain.php.wordPressRules.computed) serverConfig.push(['include', 'nginxconfig.io/wordpress.conf']);
|
||||
if (domain.php.drupalRules.computed) serverConfig.push(['include', 'nginxconfig.io/drupal.conf']);
|
||||
if (domain.php.magentoRules.computed) serverConfig.push(['include', 'nginxconfig.io/magento.conf']);
|
||||
if (domain.php.joomlaRules.computed) serverConfig.push(['include', 'nginxconfig.io/joomla.conf']);
|
||||
} else {
|
||||
// Unified
|
||||
serverConfig.push(...Object.entries(generalConf(domains, global)));
|
||||
@@ -271,6 +273,7 @@ export default (domain, domains, global) => {
|
||||
if (domain.php.wordPressRules.computed) serverConfig.push(...Object.entries(wordPressConf(global)));
|
||||
if (domain.php.drupalRules.computed) serverConfig.push(...Object.entries(drupalConf(global)));
|
||||
if (domain.php.magentoRules.computed) serverConfig.push(...Object.entries(magentoConf()));
|
||||
if (domain.php.joomlaRules.computed) serverConfig.push(...Object.entries(joomlaConf()));
|
||||
}
|
||||
|
||||
// PHP
|
||||
|
||||
@@ -37,6 +37,7 @@ import proxyConf from './conf/proxy.conf';
|
||||
import wordPressConf from './conf/wordpress.conf';
|
||||
import drupalConf from './conf/drupal.conf';
|
||||
import magentoConf from './conf/magento.conf';
|
||||
import joomlaConf from './conf/joomla.conf';
|
||||
import dockerComposeYaml from './yaml/dockerCompose.yaml';
|
||||
import dockerConf from './ext/docker';
|
||||
|
||||
@@ -94,6 +95,10 @@ export default (domains, global) => {
|
||||
if (domains.some(d => d.php.magentoRules.computed))
|
||||
files['nginxconfig.io/magento.conf'] = toConf(magentoConf());
|
||||
|
||||
// Joomla
|
||||
if (domains.some(d => d.php.joomlaRules.computed))
|
||||
files['nginxconfig.io/joomla.conf'] = toConf(joomlaConf());
|
||||
|
||||
} else {
|
||||
// PHP
|
||||
if (domains.some(d => d.php.wordPressRules.computed))
|
||||
|
||||
Reference in New Issue
Block a user