太久没用drupal开发,基本上又忘记了,以前开发还是基于D7版本,现在换D8了,两个版本差异还是挺大的,重新安装了框架,对着晴空/云客的教程重新再上手一次,在此记录一下开发前做的工作。
设置目录权限,设置php可使用内存
#进入网站根目录
chmod -R u+w sites
chmod -Rf 775 sites/default
#修改php.ini文件,设置以下两个值
max_execution_time = 300
max_input_time = 600
memory_limit = 1024M
开启并创建settings.local.php文件
安装drush命令行工具(D8下是durpalconsole)
curl https://drupalconsole.com/installer -L -o drupal.phar
mv drupal.phar /usr/local/bin/drupal
chmod +x /usr/local/bin/drupal
完成后,到网站根目录执行drupal --help,却报了以下的错误
[ERROR] Drupal Console is not installed at: "
/var/www/html/vailemail"
You must execute the following composer commands:
composer require drupal/console:~1.0 --prefer-dist --optimize-autoloader
使用指定php版本进行console安装(多php版本共存的时候,指定php版本比较好)
添加services,开启twig debug模式
编辑settings.local.php
$settings['container_yamls'][] = DRUPAL_ROOT . '/sites/development.services.yml';
#将以上的设置,修改为以下
$settings['container_yamls'][] = DRUPAL_ROOT . '/sites/default/services.local.yml';
#复制services文件
cp sites/default/default.services.yml sites/default/services.local.yml
编辑sites/default/services.local.yml
#设置以下几个变量
services:
cache.backend.null:
class: Drupal\Core\Cache\NullBackendFactory
parameters:
twig.config:
debug: true
auto_reload: true
cache: false
完成后,必须执行drupal cr all清缓存,在网站审核元素就能看到绿色的twig模板路径了
关闭缓存,检查网站是否出错
编辑settings.local.php,设置以下两个值
$settings['cache']['bins']['render'] = 'cache.backend.null';
$settings['cache']['bins']['dynamic_page_cache'] = 'cache.backend.null';
再次执行drupal cr all清缓存,换一个浏览器打开网站首页,正常访问就行