-
Notifications
You must be signed in to change notification settings - Fork 17
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
14c7133
commit 95ce379
Showing
17 changed files
with
656 additions
and
6 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,43 @@ | ||
'use strict'; | ||
|
||
// Modules | ||
const _ = require('lodash'); | ||
const path = require('path'); | ||
|
||
/* | ||
* Build Drupal 11 | ||
*/ | ||
module.exports = { | ||
name: 'drupal11', | ||
parent: '_drupaly', | ||
config: { | ||
confSrc: path.resolve(__dirname, '..', 'config', 'drupal11'), | ||
defaultFiles: {}, | ||
php: '8.3', | ||
drush: '^13', | ||
composer_version: '2-latest', | ||
}, | ||
builder: (parent, config) => class LandoDrupal11 extends parent { | ||
constructor(id, options = {}) { | ||
options = _.merge({}, config, options); | ||
// Set drush to false | ||
options.drush = false; | ||
|
||
// Let's make sure we set appropriate default versions for things | ||
// See: https://www.drupal.org/docs/system-requirements/database-server-requirements | ||
switch (_.get(options, 'database', 'mysql')) { | ||
case 'mysql': | ||
options.database = 'mysql:8.0'; | ||
break; | ||
case 'mariadb': | ||
options.database = 'mariadb:10.6'; | ||
break; | ||
case 'postgres': | ||
options.database = 'postgres:16'; | ||
break; | ||
} | ||
// Send it downstream | ||
super(id, options); | ||
}; | ||
}, | ||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,116 @@ | ||
# LANDODRUPALNGINXCONF | ||
|
||
server { | ||
listen 80 default_server; | ||
listen 443 ssl; | ||
server_name localhost; | ||
ssl_certificate /certs/cert.crt; | ||
ssl_certificate_key /certs/cert.key; | ||
ssl_verify_client off; | ||
ssl_session_cache shared:SSL:1m; | ||
ssl_session_timeout 5m; | ||
ssl_ciphers HIGH:!aNULL:!MD5; | ||
ssl_prefer_server_ciphers on; | ||
port_in_redirect off; | ||
client_max_body_size 100M; | ||
root "{{LANDO_WEBROOT}}"; | ||
location = /favicon.ico { | ||
log_not_found off; | ||
access_log off; | ||
} | ||
|
||
location = /robots.txt { | ||
allow all; | ||
log_not_found off; | ||
access_log off; | ||
} | ||
|
||
# Very rarely should these ever be accessed outside of your lan | ||
location ~* \.(txt|log)$ { | ||
allow 192.168.0.0/16; | ||
deny all; | ||
} | ||
|
||
location ~ \..*/.*\.php$ { | ||
return 403; | ||
} | ||
|
||
location ~ ^/sites/.*/private/ { | ||
return 403; | ||
} | ||
|
||
# Allow "Well-Known URIs" as per RFC 5785 | ||
location ~* ^/.well-known/ { | ||
allow all; | ||
} | ||
|
||
# Block access to "hidden" files and directories whose names begin with a | ||
# period. This includes directories used by version control systems such | ||
# as Subversion or Git to store control files. | ||
location ~ (^|/)\. { | ||
return 403; | ||
} | ||
|
||
location / { | ||
# try_files $uri @rewrite; # For Drupal <= 6 | ||
try_files $uri /index.php?$query_string; # For Drupal >= 7 | ||
} | ||
|
||
location @rewrite { | ||
#rewrite ^/(.*)$ /index.php?q=$1; # For Drupal <= 6 | ||
rewrite ^ /index.php; # For Drupal >= 7 | ||
} | ||
|
||
# Don't allow direct access to PHP files in the vendor directory. | ||
location ~ /vendor/.*\.php$ { | ||
deny all; | ||
return 404; | ||
} | ||
|
||
# In Drupal 11, we must also match new paths where the '.php' appears in | ||
# the middle, such as update.php/selection. The rule we use is strict, | ||
# and only allows this pattern with the update.php front controller. | ||
# This allows legacy path aliases in the form of | ||
# blog/index.php/legacy-path to continue to route to Drupal nodes. If | ||
# you do not have any paths like that, then you might prefer to use a | ||
# laxer rule, such as: | ||
# location ~ \.php(/|$) { | ||
# The laxer rule will continue to work if Drupal uses this new URL | ||
# pattern with front controllers other than update.php in a future | ||
# release. | ||
location ~ '\.php$|^/update.php' { | ||
fastcgi_split_path_info ^(.+?\.php)(|/.*)$; | ||
# Security note: If you're running a version of PHP older than the | ||
# latest 5.3, you should have "cgi.fix_pathinfo = 0;" in php.ini. | ||
# See http://serverfault.com/q/627903/94922 for details. | ||
include fastcgi_params; | ||
# Block httpoxy attacks. See https://httpoxy.org/. | ||
fastcgi_param HTTP_PROXY ""; | ||
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; | ||
fastcgi_param PATH_INFO $fastcgi_path_info; | ||
fastcgi_param QUERY_STRING $query_string; | ||
fastcgi_intercept_errors on; | ||
# PHP 5 socket location. | ||
#fastcgi_pass unix:/var/run/php5-fpm.sock; | ||
# PHP 7 socket location. | ||
#fastcgi_pass unix:/var/run/php/php7.0-fpm.sock; | ||
#lando | ||
fastcgi_pass fpm:9000; | ||
} | ||
# Fighting with Styles? This little gem is amazing. | ||
# location ~ ^/sites/.*/files/imagecache/ { # For Drupal <= 6 | ||
location ~ ^(/[a-z\-]+)?/sites/.*/files/(css|js|styles)/ { # For Drupal >= 7 | ||
try_files $uri @rewrite; | ||
} | ||
# Handle private files through Drupal. Private file's path can come | ||
# with a language prefix. | ||
location ~ ^(/[a-z\-]+)?/system/files/ { # For Drupal >= 7 | ||
try_files $uri /index.php?$query_string; | ||
} | ||
|
||
location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ { | ||
expires max; | ||
log_not_found off; | ||
} | ||
|
||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,111 @@ | ||
# | ||
# The MySQL database server configuration file for Lando | ||
# | ||
# LANDODRUPALMYSQLCNF | ||
|
||
[mysqld] | ||
# | ||
# * Basic Settings | ||
# | ||
# Data is stored in a volume on the db container /sql | ||
default-storage-engine = innodb | ||
|
||
# | ||
# * Fine Tuning | ||
# | ||
key_buffer_size = 384M | ||
max_allowed_packet = 32M | ||
thread_stack = 400K | ||
thread_cache_size = 8 | ||
# This replaces the startup script and checks MyISAM tables if needed | ||
# the first time they are touched | ||
#max_connections = 100 | ||
#table_cache = 64 | ||
#thread_concurrency = 10 | ||
read_rnd_buffer_size = 8M | ||
myisam_sort_buffer_size = 64M | ||
table_open_cache = 512 | ||
sort_buffer_size = 2M | ||
read_buffer_size = 2M | ||
|
||
# | ||
# * Query Cache Configuration | ||
# | ||
query_cache_limit = 1M | ||
query_cache_size = 64M | ||
# | ||
# * Logging and Replication | ||
# | ||
# Both location gets rotated by the cronjob. | ||
# Be aware that this log type is a performance killer. | ||
# As of 5.1 you can enable the log at runtime! | ||
#general_log_file = /src/.lando/log/mysql.log | ||
#general_log = 1 | ||
# | ||
# Error logging goes to syslog due to /etc/mysql/conf.d/mysqld_safe_syslog.cnf. | ||
# | ||
# Here you can see queries with especially long duration | ||
#log_slow_queries = /var/log/mysql/mysql-slow.log | ||
#long_query_time = 2 | ||
#log-queries-not-using-indexes | ||
# | ||
# The following can be used as easy to replay backup logs or for replication. | ||
# note: if you are setting up a replication slave, see README.Debian about | ||
# other settings you may need to change. | ||
#server-id = 1 | ||
#log_bin = /src/.lando/log/mysql-bin.log | ||
expire_logs_days = 10 | ||
max_binlog_size = 100M | ||
#binlog_do_db = include_database_name | ||
#binlog_ignore_db = include_database_name | ||
# | ||
# * InnoDB | ||
# | ||
# InnoDB is enabled by default with a 10MB datafile in /var/lib/mysql/. | ||
# Read the manual for more InnoDB related options. There are many! | ||
# | ||
# Uncomment the following if you are using InnoDB tables | ||
#innodb_data_file_path = ibdata1:2000M;ibdata2:10M:autoextend | ||
#innodb_log_group_home_dir = C:\mysql\data/ | ||
# You can set .._buffer_pool_size up to 50 - 80 % | ||
# of RAM but beware of setting memory usage too high | ||
#innodb_buffer_pool_size = 384M | ||
#innodb_additional_mem_pool_size = 20M | ||
# Set .._log_file_size to 25 % of buffer pool size | ||
innodb_log_file_size = 101M | ||
#innodb_log_buffer_size = 8M | ||
innodb_flush_log_at_trx_commit = 0 | ||
#innodb_lock_wait_timeout = 50 | ||
innodb_buffer_pool_size = 384M | ||
innodb_log_buffer_size = 4M | ||
innodb_file_per_table = 1 | ||
innodb_open_files = 256 | ||
innodb_io_capacity = 512 | ||
innodb_flush_method = O_DIRECT | ||
innodb_thread_concurrency = 8 | ||
innodb_lock_wait_timeout = 121 | ||
# | ||
# * Security Features | ||
# | ||
# Read the manual, too, if you want chroot! | ||
# chroot = /var/lib/mysql/ | ||
# | ||
# For generating SSL certificates I recommend the OpenSSL GUI "tinyca". | ||
# | ||
# ssl-ca=/etc/mysql/cacert.pem | ||
# ssl-cert=/etc/mysql/server-cert.pem | ||
# ssl-key=/etc/mysql/server-key.pem | ||
|
||
[mysqldump] | ||
quick | ||
quote-names | ||
max_allowed_packet = 32M | ||
|
||
[mysql] | ||
#no-auto-rehash # faster start of mysql but no tab completion | ||
|
||
[isamchk] | ||
key_buffer_size = 384M | ||
sort_buffer_size = 256M | ||
read_buffer = 2M | ||
write_buffer = 2M |
Oops, something went wrong.