Planet Drupal

Syndicate content
Drupal.org - aggregated feeds in category Planet Drupal
Updated: 36 min 51 sec ago

OSTraining: Custom Layouts for Webforms in Drupal 7

Fri, 01/22/2016 - 01:18
div class=ost-intro-imageimg src=https://www.ostraining.com/images/drupal/webform-layout/webform-layout.jpg alt=Custom Layouts for Webforms with Webform Layout Module for Drupal 7 width=200 height=133 //div pOne of our users asked for a way to customize the layout for his Drupal 7 webforms./p pWebforms Layout is a module that extends Webform features by providing more control over the design./p pIn this post, I'll share with you how to use Webform Layout module. Let's start.../p

Savas Labs: How to subscribe users to MailChimp lists in a Drupal custom module

Fri, 01/22/2016 - 01:00
pA demonstration on how to use Composer Manager and the MailChimp PHP library to simply and easily subscribe users to mailing lists without using the MailChimp contributed module./p pa href=http://savaslabs.com/2016/01/22/composer-mailchimp-subscriptions.htmlContinue reading…/a/p

jordanpagewhite: Drupal Features, Deployment Module, and Drush Aliases

Fri, 01/22/2016 - 01:00
pFeatures allows you to bundle entities, and their configurations, into a feature module that is written to code. So, what is so great about that? Can#39;t you accomplish the same functionality by building out your views, content types, etc. through the Drupal admin UI. Yes, you can, but all of the entities and configuration will be saved in the database, as opposed to in code. Saving your entities and configuration to code is an immense benefit, if not necessary, for Drupal sites that are deployed across multiple environments, and even more if there are multiple developers working on the site./p

Darren Mothersele: Session submission guidelines for conferences and camps

Fri, 01/22/2016 - 01:00
pEarlier this week I found out that the date for my nephew#39;s christening has changed. This means I can now make it to the Drupal Camp in London. I decided to propose a session so that I can share my recent insights, research, and learning./p pThe Drupal Camp London team have kept the session submission process minimal. This makes it easy for people to submit proposals, but it makes it unclear what the expectations are. What are they looking for in proposed sessions? How long are the sessions expected to be? What is the review process?/p !--break-- pAs I only found out I could attend at the last minute, I had no time to enquire about the process. So I made some assumptions based on my experiences of programming at previous camps. I also did some research into other Drupal camp and conference session submission processes. The a href=https://amsterdam2014.drupal.org/news/session-selection-drupalcon-inside-out.htmlAmsterdam Drupalcon site/a had this to say:/p blockquote pquot;There’s a lot of elements to session selection. We need to make sure that sessions are of value to a wide audience. The presenters must be engaging speakers who can interest a large crowd of attendees. We try as hard as we can to bring in new (to DrupalCon) speakers, and speakers who bring something from outside of the Drupal sphere. We want to make sure that the diversity of the community is represented and encouraged. And we need to work across track teams to ensure that one speaker is not speaking in several tracks; both for the sake of their stress and sanity in preparing the talks and to ensure that everyone who applied has the best chance of speaking. Finally, we need to make sure that sessions fit both the theme of the track and of the conference.quot;/p /blockquote pWhile the a href=https://events.drupal.org/barcelona2015/session-submission-liveBarcelona Drupalcon/a offered the following 3 part session submission formula.../p blockquote pPart 1: Describe a compelling topic that affects the reader directly, maybe a pain point, or juicy new technology. br Part 2: Allude to your solution, sharing just enough that the reader has a moment of quot;I need that ...how do I not know this already?quot; br Part 3: Explain how awesome the session will be because you are going to cover quot;XYZquot; and make the reader#39;s life so much better./p /blockquote h2My session selection criteria/h2 pI realised that I#39;ve done session selection myself many times. At every conference, camp, and symposium I attend I make my own selection of sessions to attend. The key to making the most out of attending a conference is to attend the right sessions./p pAt Resonate last year I set the intention of broadening my horizons, so intentionally selected session that I would not normally be exposed to. And sessions that offered something new. At DrupalCon in Amsterdam I set the intension of getting as deep into Drupal 8 as possible. So I attended every D8 session I could. Selecting the sessions I thought offered the most opportunity for learning. It helps if they are recognisable names, or people I#39;ve seen present before and know they do a good session./p pWhen I think about my own criteria, I get it down to five things.../p h3Importance/h3 pIs this definitely a session worth attending? Is the session topic cutting edge, or immediately relevant to my situation. Is it ground breaking or offer a significant contribution to the field?/p h3Purpose/h3 pIs this the right type of session? Is the purpose of the session clear? Does the description make it clear what the expected participant outcomes are? Does the description give enough specific information to make me want to know more?/p h3Motivation/h3 pIs the session motivated by theory, practice, and/or research? Is this presented in a detailed, thorough, and comprehensible way?/p h3Substantiated/h3 pAre all claims (practices, conclusions, proposals) well substantiated. Is the speaker presenting something they know about? Is the speaker well positioned to be giving the session./p h3Clarity/h3 pIs the session proposal clear? A well written session description indicates the presentation itself will be of professional quality./p pI hope I managed to purvey these five points in my own a href=http://www.darrenmothersele.com/blog/2016/01/21/survive-and-thrive-drupal-8/session proposal/a. I#39;d love to hear from you if you have your own ideas about what makes a good Drupalcamp session. If you drop me a line or leave a comment I will take them into account while planning my own session./p pThanks,/p pDarren/p

OSTraining: Entity Reference Views Help Drupal Content Creators

Thu, 01/21/2016 - 23:24
div class=ost-intro-imageimg src=https://www.ostraining.com/images/drupal/entity-reference-view.jpg alt=Entity Reference Views Help Drupal Content Creators width=200 height=133 //div pEntity Reference Views are one way you can make life easier for Drupal content creators./p pNormally, when people are creating content on your site, each field consists of a single box with a single data point. For example, in a list of people, you might get only the person's name.nbsp;/p pEntity Reference Views allow you to provide far more information. For example, you can add photos and personal details to your list of people./p

Freelock : 8 Reasons Why Drupal 8

Thu, 01/21/2016 - 22:29
div class=g-plusone-wrapper style=margin: 0 1em 1em 1em;float:right g:plusone href=http://www.freelock.com/blog/john-locke/2016-01/8-reasons-why-drupal-8 size=medium annotation=bubble width=250 /g:plusone/divdiv class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item evenpDrupal 8 has been out for 2 months now, and there's never been a better time to choose Drupal for your website platform. Here are 8 reasons why!/p h21. Mobile Experience/h2 pDrupal 8 is mobile first. Every bit of Drupal 8 can be easily managed from your smartphone, with a responsive experience that works well right up to the widest displays./p pYou don't need a separate mobile site./p/div/div/divdiv class=field field-name-taxonomy-vocabulary-5 field-type-taxonomy-term-reference field-label-hiddendiv class=field-itemsdiv class=field-item evena href=/tag/drupalDrupal/a/divdiv class=field-item odda href=/tag/drupal-8Drupal 8/a/divdiv class=field-item evena href=/tag/drupal-planetDrupal Planet/a/divdiv class=field-item odda href=/tag/devopsDevOps/a/divdiv class=field-item evena href=/tag/qualityQuality/a/div/div/div

ShooFlyDesign: Using Node.js module with Drupal 7 and Heroku

Thu, 01/21/2016 - 21:41
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item evenpimg src=/sites/default/files/drupal-node-heroku.png alt=Drupal, Node, and Heroku //p/div/div/divdiv class=field field-name-node-link field-type-ds field-label-hiddendiv class=field-itemsdiv class=field-item evena href=/buzz/using-nodejs-module-with-drupal-7-and-herokuRead more/a/div/div/div

Acquia Developer Center Blog: Chris Pliakas on How to Successfully Manage Software Projects

Thu, 01/21/2016 - 20:15
div class=field field-name-field-author field-type-entityreference field-label-hiddendiv class=field-itemsdiv class=field-item evenChris Pliakas/div/div/divdiv class=field field-name-field-blog-image field-type-image field-label-hiddendiv class=field-itemsdiv class=field-item evenimg typeof=foaf:Image src=https://dev.acquia.com/sites/default/files/styles/blog__190_x110_/public/blog/screenshot_2016-01-21_13.30.28.png?itok=tdTU011j width=140 height=85 alt= //div/div/divdiv class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item even property=content:encodedpemChris Pliakas, the director of Content Services Engineering at Acquia, has been leading the Acquia Content Hub project since May, 2015. A certified ScrumMaster, Chris has been working at Acquia since 2010: as a technical consultant, solutions architect, scrum master, and engineering manager./em/p/div/div/divdiv class=field field-name-field-blog-tags field-type-taxonomy-term-reference field-label-inline clearfixdiv class=field-labelTags:nbsp;/divdiv class=field-itemsdiv class=field-item evena href=/tags/acquia-drupal-planet typeof=skos:Concept property=rdfs:label skos:prefLabel datatype=acquia drupal planet/a/div/div/div

Promet Source: Connect Site Users to Premium Content with Commerce License

Thu, 01/21/2016 - 19:23
Intro to Commerce License pCommerce License is a module that grants users access to premium digital resources by either a remote or local license./p pThis module is good for granting users a license to resources that live behind a paywall, such as training materials or videos. /p

YesCT: Get issues you care about ready for Global Sprint Weekend

Thu, 01/21/2016 - 18:06
span class=field field-node--title field-name-title field-type-string field-label-hidden data-quickedit-field-id=node/63/title/en/fulltextGet issues you care about ready for Global Sprint Weekend/span ul class=links inlineli class=comment-forbiddena href=/user/login?destination=node%2F63%23comment-formLog in/a to post comments/li/uldiv class=field field-node--body field-name-body field-type-text-with-summary field-label-hidden data-quickedit-field-id=node/63/body/en/fulltext div class=field-items div class=field-item property=schema:texth2Introduction/h2 pa href=https://groups.drupal.org/node/488988Drupal Global Sprint Weekend/a is January 30 and 31, 2016, and so far we have 34 locations all over the world./p pThis post will talk about what organizers and experienced contributors can do to get issues ready for sprint attendees to work on./p pThere is still time to add your small local sprint. Read a href=http://www.blackmesh.com/blog/you-can-organize-small-local-sprint-part-drupal-global-sprint-weekend-2016the post/a and get your location listed!/p h2Preparation/h2 h3Triage/h3 pGet an overview of your issue queue./p pReview any RTBC issues, test (and if you are a maintainer, commit) them. Or, mark them needs work, giving specific actionable feedback. This will encourage past contributors to return, because they will see their work get in, or your review will show them you appreciate their work, and the specific feedback will help them know what to do next./p pReduce the size of your issue queue. Close issues won't fix, explaining why./p pPostpone issues. Update the summary of issues to include information about what the issue is postponed on. Maybe whether it can be worked on or not depends on the phase of the release cycle the project is in. (Read the a href=https://groups.drupal.org/coreCore groups.drupal.org group/a for announcements about core release phases.)/p pOr, if it is blocked on another issue, postpone it and link to the blocking issue. (Update the blocking issue summary also noting the issues that are postponed on it.) Under the Issue summary amp; relationships field, make sure the issues are related./p pEliminating issues you don't want people to work on will help them focus on the issues that are relevant. They will appreciate that./p h3Pick a few issues/h3 pPick a few issues you want people to work on. Try to pick ones that involve a variety of skill sets and experience levels. List them in a way that is convenient for you. You could tag them SprintWeekend2016, and then use an advanced search to show just those issues. Or, make a google spreadsheet, or whatever works for you. If you have a couple issues that have very clear next steps documented and a small scope, tag them Novice. a href=https://www.drupal.org/core-mentoring/novice-tasksRead about what makes a good novice task./a/p pFor those issues, a href=https://www.drupal.org/contributor-tasks/write-issue-summaryupdate the issue summary/a. Include a Remaining Tasks section which links to instructions for how to do each task. The a href=https://dreditor.org/dreditor/a browser plug in adds an insert tasks button to drupal.org issue pages that puts an html table with links to tasks in an issue summary. Uncomment or comment out rows in the table depending on what remains to be done on your issue./p h3Give constructive feedback/h3 pa href=https://www.drupal.org/constructive-feedbackRead the drupal.org handbook page on constructive feedback./a Whenever you leave feedback, thank the person for something specific that you would like them to do again. When making suggestions, give or link to examples. List specific next steps, give instructions or link to specifics, for example, link to one of the a href=https://www.drupal.org/contributor-taskscontributor tasks/a child pages./p h3Make a short list/h3 pMake a link to issues you want people to focus on. You might do this by using the drupal.org advanced search for issues, filtering to: your project, SprintWeekend2016 tag, and issues where the status is: needs work and needs review (and maybe also active). Make a second link to an advanced search that also filters to issues tagged novice. (Or, filter to whatever criteria you want.) Share these links with others./p h2Write a post/h2 pWrite a post about the topic you want to sprint on. Give some background information. Celebrate what already works. Link to a few of the issues you want to tackle at the sprint. Edit the a href=https://groups.drupal.org/node/488988Global Sprint Weekend wiki/a and put a link to your post next to your location. Or, if you will be remote only, list it under virtual./p h2Have questions?/h2 pTweet using the a href=https://twitter.com/search?f=tweetsamp;vertical=defaultamp;q=%23SprintWeekendamp;src=typd#SprintWeekend/a hash tag, post a comment on the a href=https://groups.drupal.org/node/488988g.d.o wiki page/a, ask in the a href=https://groups.drupal.org/node/498703Mentoring Group/a, or ask in a href=https://www.drupal.org/ircIRC/a in #drupal-contribute. -Cathy (a href=https://drupal.org/user/258568YesCT/a)/p h3Resources for Organizers/h3 ullia href=https://groups.drupal.org/node/488988Drupal Global Sprint Weekend 2016 wiki/a/li lia href=http://www.blackmesh.com/blog/you-can-organize-small-local-sprint-part-drupal-global-sprint-weekend-2016You can organize a small local sprint as part of Drupal Global Sprint Weekend 2016/a/li lia href=http://yesct.net/sprintweekend2016/organizer-preparationPreparation tips for organizers of local Drupal Global Sprint Weekend 2016 sprints/a/li lia href=https://www.drupal.org/core-mentoring/sprint-resourcesDrupal.org handbook page: Resources for sprint planners/a/li lia href=https://www.mediacurrent.com/blog/dropcast-episode-14Dropcast Episode 14: Mediacurrent and Cathy talk about Drupal Global Sprint Weekend 2016/a/li /ul/div /div /div div class=field field-node--field-tags field-name-field-tags field-type-taxonomy-term-reference field-label-hidden clearfix data-quickedit-field-id=node/63/field_tags/en/fulltext ul class=links field-items li class=taxonomy-term-reference-0a href=/planet property=schema:aboutPlanet/a/li /ul /div section class=field field-node--comment field-name-comment field-type-comment field-label-hidden comment-wrapper rel=schema:comment data-quickedit-field-id=node/63/comment/en/fulltext /section

OpenLucius: 12 cool modules for Drupal site builders | January 2016

Thu, 01/21/2016 - 15:05
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item evenpThe holidays are over for a while now, so it's about time for a new blog. In this article I'll discuss 12 modules that can help you get started with a great Drupal site:/p h21. Max image size/h2 pimg src=http://blog.openlucius.com/sites/default/files/drupal-planet_12-cool-modules-drupal-site-builders-january-2016.png width=1812 height=934 alt= class=img-responsive //p /div/div/div

Drupal core announcements: BigPipe in Drupal 8.1: please test!

Thu, 01/21/2016 - 13:45
pDrupal 8.1 is accepting new features, and a href=https://www.drupal.org/node/2469431#comment-10771132BigPipe is being proposed to be added as an experimental module to Drupal 8.1/a. BigPipe sends pages to clients in a way that allows browsers to show them much faster. It first sends the cacheable parts of the page, then the dynamic/uncacheable parts./p pIf you're interested or concerned, please give the a href=https://www.drupal.org/project/big_pipeBigPipe contributed module for Drupal 8.0.x a try/a, and even try to break it! The more confident we can be about its stability, the more likely it being part of Drupal 8.1 will be. /p

Jeff Geerling's Blog: Configuring CloudFlare with Drupal 8 to protect the Pi Dramble

Thu, 01/21/2016 - 04:46
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item evenpIn a prior post on a href=/blog/2015/constraints-home-website-hostingthe constraints of in-home website hosting/a, I mentioned one of the major hurdles to serving content quickly and reliably over a home Internet connection is the bandwidth you get from your ISP. I also mentioned one way to mitigate the risk of DoSing your own home Internet is to use a CDN and host images externally./p pAt this point, I have both of those things set up for a href=http://www.pidramble.com/www.pidramble.com/a (a Drupal 8 site hosted on a cluster of Raspberry Pis in my basement!), and I wanted to outline how I set up Drupal 8 and CloudFlare so almost all requests to a href=http://www.pidramble.com/www.pidramble.com/a are served through CloudFlare directly to the end user!/p h2CloudFlare Configuration/h2 pBefore anything else, you need a CloudFlare account; the free plan offers all the necessary features (though you should consider upgrading to a better plan if you have emanything/em beyond the simplest use cases in mind!). Visit the a href=https://www.cloudflare.com/plans/CloudFlare Plans/a page and sign up for a Free account./p/div/div/div

Fredrik Jonsson: Running Drupal on Debian 8 with Apache 2.4, event MPM and PHP-FPM (via socks and proxy)

Thu, 01/21/2016 - 02:02
div class=field field-name-field-tags field-type-taxonomy-term-reference field-label-hiddendiv class=field-itemsdiv class=field-item evena href=/taxonomy/term/63 typeof=skos:Concept property=rdfs:label skos:prefLabel datatype=apache/a/divdiv class=field-item odda href=/taxonomy/term/317 typeof=skos:Concept property=rdfs:label skos:prefLabel datatype=php/a/divdiv class=field-item evena href=/planetdrupal typeof=skos:Concept property=rdfs:label skos:prefLabel datatype=planetdrupal/a/divdiv class=field-item odda href=/taxonomy/term/242 typeof=skos:Concept property=rdfs:label skos:prefLabel datatype=server/a/divdiv class=field-item evena href=/drupalpage/blog typeof=skos:Concept property=rdfs:label skos:prefLabel datatype=drupal/a/divdiv class=field-item odda href=/taxonomy/term/218 typeof=skos:Concept property=rdfs:label skos:prefLabel datatype=performance/a/divdiv class=field-item evena href=/taxonomy/term/100 typeof=skos:Concept property=rdfs:label skos:prefLabel datatype=debian/a/div/div/divdiv class=field field-name-field-blog-category field-type-taxonomy-term-reference field-label-hiddendiv class=field-itemsdiv class=field-item evena href=/taxonomy/term/4 typeof=skos:Concept property=rdfs:label skos:prefLabel datatype=Development/a/div/div/divdiv class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item even property=content:encodedpI’m building a new Ansible playbook for setting up web servers with Debian 8. I have always used mod_php before and it has been very stable but have some well known drawbacks. Since Debian 8 comes with Apache 2.4 and PHP 5.6 I wanted to implement PHP-FPM that seems very promising./p pWith mod_php every Apache process will need to load PHP and therefor use a lot more RAM than needed, even for just serving static content like images and css. I have been running a href=/node/1259Lighttpd as a static file server/a to mitigate this problem./p pWith event MPM + PHP-FPM a plain Apache processes will deal with all static content and hand of PHP request to separate PHP-FPM processes. This will allow a server to handle more visitors with the same amount of RAM and I can skip Lighttpd./p pI found surprisingly little information on how to get this working well for serving things like Drupal. So here are what I have found out from manuals, post on the Internet as well as my own testing./p pThis setup has not been tested in production yet! When it has I will try to remember to update this article. In local testing on a VirtualBox image with Debian 8 and 512 MB RAM it seems to work fine. I also run the same setup locally on OS X with good results./p pHere are some performance test done with ab. These doesn’t say much more than that it seems to work and most likely can handle some load./p div class=codeblockcodeab -k -l -n 1000 -c 10 -H Accept-Encoding: gzip,deflate http://xdeb.dev/br /br /Requests per second:    526.01 [#/sec] (mean)/code/div pThis was the front page of a local version of xdeb.org running Drupal 7, with page cache of course. I also tested with plain Drupal 8 and got around 300 request/sec, more or less what one would expect./p pA plain html page looks like this./p div class=codeblockcodeab -k -l -n 1000 -c 10 -H Accept-Encoding: gzip,deflate http://localhost/br /br /Requests per second:    2466.39 [#/sec] (mean)/code/div h2Installation/h2 pStart by installing needed packages./p div class=codeblockcodeapt-get install apache2 apache2-dev php5-fpm mariadb-server/code/div pYou most likely want some more php extensions as well, here are the ones I normally install for running Drupal./p div class=codeblockcodeapt-get install php5-cli php5-apcu php5-curl php5-dev php5-gd php5-imagick php5-json php5-mysql php5-mcrypt php5-twig php-pear graphicsmagick graphicsmagick-imagemagick-compat/code/div pAs suggested in a href=http://wiki.apache.org/httpd/PHP-FPMhttp://wiki.apache.org/httpd/PHP-FPM/a I will run PHP-FPM via mod_proxy_fcgi so lets activate that module./p div class=codeblockcodea2enmod proxy_fcgi/code/div pThis will automatically activate the proxy module as well since it is a dependency. I also activate auth_digest, expires, rewrite and ssl on my servers. Rewrite is needed for Drupal to get clean URLs./p h2Apache and PHP-FPM configurations/h2 pDebian by default set up PHP-FPM to listen on a unix socket and since that should perform a bit better than a TCP socket I will use that. The most important setting is “max_children”. With Drupal each PHP process will use something like 20-40 MB typically, can be a lot more for some site so you simply need to test and see./p pIf your Drupal site use 30 MB per process setting “max_children” to 10 means that PHP will use up to about 10 * 30 MB = 300 MB of RAM. A good resource for figuring out what is the best settings is this blog post a href=http://myshell.co.uk/blog/2012/07/adjusting-child-processes-for-php-fpm-nginx/Adjusting child processes for PHP-FPM (Nginx) · MYSHELL.CO.UK/a/p div class=codeblockcodelisten = /var/run/php5-fpm.sockbr /pm = dynamicbr /pm.max_children = 10br /pm.start_servers = 4br /pm.min_spare_servers = 2br /pm.max_spare_servers = 6br /pm.max_requests = 2000/code/div pThe default MPM for Apache 2.4 (at least on Debian) is event MPM and since that is the most modern and best performing MPM there is no reason not to use it. I run with default setting and that should work well for most small servers. If needed I may up the value on ThreadsPerChild but I don’t think that will be needed on my servers./p div class=codeblockcode# event MPMbr /# ServerLimit: upper limit on configurable number of processes (default = 16)br /# StartServers: initial number of server processes to start (default = 3)br /# MinSpareThreads: minimum number of worker threads which are kept spare (default = 25)br /# MaxSpareThreads: maximum number of worker threads which are kept spare (default = 75)br /# ThreadLimit: upper limit on the configurable number of threads per child process (default = 64)br /# ThreadsPerChild: constant number of worker threads in each server process (default = 25)br /# MaxRequestWorkers: maximum number of worker threads (default = ServerLimit x ThreadsPerChild)br /# MaxConnectionsPerChild: maximum number of requests a server process serves (default = 0)br /lt;IfModule mpm_event_modulegt;br /  ServerLimit             16br /  StartServers            3br /  MinSpareThreads         25br /  MaxSpareThreads         75br /  ThreadLimit             64br /  ThreadsPerChild         25br /  MaxConnectionsPerChild  2000br /lt;/IfModulegt;/code/div h2Apache vhost setup/h2 pHere we then come to the part that caused me the biggest problem. How to get PHP-FPM to only run the php files I wanted and not everything. The Apache wiki page above suggest using ProxyPassMatch but it turns out that that overrides any restrictions set in e.g. a Files/FilesMatch directive. For Drupal I want to block access to files like update.php and cron.php so another solution was needed./p pI found the solution in a post from Mattias Geniar a href=https://ma.ttias.be/apache-2-4-proxypass-for-php-taking-precedence-over-filesfilesmatch-in-htaccess/Apache 2.4: ProxyPass (For PHP) Taking Precedence Over Files/FilesMatch In Htaccess/a. His suggestion to use a SetHandle in a FileMatch directive seems to work very well./p pThis is how I set up a vhost for serving Drupal./p div class=codeblockcodelt;VirtualHost *:80gt;br /  DocumentRoot /var/www/customers/example/webbr /  ServerName example.combr /  ServerAlias www.example.combr /  ErrorLog /var/www/customers/example/logs/error_logbr /  CustomLog /var/www/customers/example/logs/access_log combinedbr /  lt;Directory /var/www/customers/example/webgt;br /    Options FollowSymLinksbr /    AllowOverride Nonebr /    Include /var/www/customers/example/web/.htaccessbr /    lt;IfModule mod_proxy_fcgi.cgt;br /      # Run php-fpm via proxy_fcgibr /      lt;FilesMatch \.php$gt;br /        SetHandler proxy:unix:/var/run/php5-fpm.sock|fcgi://localhostbr /      lt;/FilesMatchgt;br /    lt;/IfModulegt;br /    # Only allow access to cron.php etc. from localhostbr /    lt;FilesMatch ^(cron|install|update|xmlrpc)\.phpgt;br /      Require localbr /    lt;/FilesMatchgt;br /  lt;/Directorygt;br /lt;/VirtualHostgt;/code/div pNotice that I include the .htaccess file. I have set “AllowOverride None” to prevent Apache from looking for and automatically include any .htaccess files it finds. This improves performance a bit but one needs to remember to reload Apache when changes are made to the .htaccess file./p h2Extra security configurations in Apache for Drupal/h2 pDrupal put .htaccess in the files folder and some other places for security reasons. The following is an example how to add the same security configurations directly in an Apache conf file. The DirectoryMatch regex most likely needs adjustment for your directory structure./p div class=codeblockcode# Security setting for files folder in Drupal.br /lt;DirectoryMatch ^/var/www/.*/web/(.+/)?(files|tmp)gt;br /  # Turn off all options we don't need.br /  Options -Indexes -ExecCGI -Includes -MultiViewsbr /br /  # Set the catch-all handler to prevent scripts from being executed.br /  SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006br /  lt;Files *gt;br /    # Override the handler again if we're run later in the evaluation list.br /    SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003br /  lt;/Filesgt;br /br /  # If we know how to do it safely, disable the PHP engine entirely.br /  lt;IfModule mod_php5.cgt;br /    php_flag engine offbr /  lt;/IfModulegt;br /lt;/DirectoryMatchgt;br /br /# Security setting for config folder in Drupal.br /lt;DirectoryMatch ^/var/www/.*/web/(.+/)?(private|config|sync|translations|twig)gt;br /  lt;IfModule mod_authz_core.cgt;br /    Require all deniedbr /  lt;/IfModulegt;br /br /  # Deny all requests from Apache 2.0-2.2.br /  lt;IfModule !mod_authz_core.cgt;br /    Deny from allbr /  lt;/IfModulegt;br /  # Turn off all options we don't need.br /  Options -Indexes -ExecCGI -Includes -MultiViewsbr /br /  # Set the catch-all handler to prevent scripts from being executed.br /  SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006br /  lt;Files *gt;br /    # Override the handler again if we're run later in the evaluation list.br /    SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003br /  lt;/Filesgt;br /br /  # If we know how to do it safely, disable the PHP engine entirely.br /  lt;IfModule mod_php5.cgt;br /    php_flag engine offbr /  lt;/IfModulegt;br /lt;/DirectoryMatchgt;/code/div /div/div/div

Cocomore: Starting in the new year with Drupal 8 – Cocomore workshop in January 2016

Thu, 01/21/2016 - 00:00
pOn January 8th our developers camte together to have a Drupal 8 workshop. You can read here, what they experienced and what is new for the Frontend with Drupal 8!/p

Palantir: The Secret Sauce podcast, Ep. 01

Wed, 01/20/2016 - 17:49
pThis is the first in our weekly bonus podcast that deals with shorter tips and resources that will help you with some straightforward facet of your web project. It's a compliment to our monthly, long-form podcast On the Air With Palantir. That's why we call it the Secret Sauce./p pSome episodes will focus on strategy, design, metrics, or other such topics, while others will be more technical in nature. Whatever the focus, we want these to be useful for you, so we draw from our real world experience./p iframe id=audio_iframe src=https://www.podbean.com/media/player/bangz-5be74d?from=yiiadminamp;skin=105amp;postId=6022989amp;download=0amp;share=1amp;fonts=Helveticaamp;auto=0 height=100 width=100% frameborder=0 scrolling=no data-name=pb-iframe-player/iframeh5a href=https://itunes.apple.com/us/podcast/on-the-air-with-palantir/id1075348150iTunes/a | a href=http://palantir.podbean.com/feed/RSS Feed/a | a href=http://palantir.podbean.com/mf/play/jfwg5t/Palantir_TheSecretSauce_01_201601.m4aDownload/a/h5 pThis time around Allison Manley lets Larry Garfield take the mic to talk about Drupal 8, how you can prepare for it properly, and how the changes in this new version push us toward a content strategy approach. While applicable to anyone considering Drupal 8, this particular episode is mostly technical in nature and geared more toward site builders and developers./p pLook for the Secret Sauce bonus podcast released weekly on Tuesdays./p h3Want to talk Drupal 8, and see how our consulting services can get you on the right path? a href=https://www.palantir.net/contact onclick=_gaq.push (['_trackEvent', 'Podcast', 'CTA', 'Lead']);Let's schedule a time to talk./a/h3 p/p

Drupal.org Featured Case Studies: City of Chicago, Office of the City Clerk Website

Wed, 01/20/2016 - 17:16
div class=field field-name-field-mainimage field-type-image field-label-hiddendiv class=field-itemsdiv class=field-item evenimg src=https://www.drupal.org/files/styles/case588x306/public/viewports_chicityclerk_620x440.png?itok=oNmFDiPs width=588 height=306 alt=City of Chicago, Office of the City Clerk Website //div/div/divdiv class=field field-name-field-link field-type-link-field field-label-abovediv class=field-labelCompleted Drupal site or project URL:nbsp;/divdiv class=field-itemsdiv class=field-item evena href=http://www.chicityclerk.comhttp://www.chicityclerk.com/a/div/div/divdiv class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item evenpChicago’s Office of the City Clerk (“OCC”) is the most visited office in Chicago government. Citizens regularly use the OCC’s primary website to get information about how to purchase Chicago city vehicle stickers, search prior City Council agendas and legislation, and tune in for the live streaming of Chicago City Council meetings. /p pThe office is known for its technological innovation: it recently moved the purchase of Chicago city vehicle stickers to a year-round online purchasing system, replacing the nearly century-old process of having citizens stand in line once a year to purchase such stickers in person. That mission of innovation was not reflected in its old website, however. The old website was a mix of WordPress and custom PHP files, with document storage split across multiple domains. /p pOn the old site, maintenance was difficult, with simple site content changes often requiring a knowledge of HTML and CSS that OCC staff didn’t have. Additionally, the site was not easily used from mobile devices, despite the fact that nearly 50% of the site traffic came from such devices. OCC knew that it needed an overhaul for its website in order to serve the residents of Chicago for years to come./p/div/div/divdiv class=field field-name-field-module field-type-node-reference field-label-abovediv class=field-labelKey modules/theme/distribution used:nbsp;/divdiv class=field-itemsdiv class=field-item evena href=/project/feed_importFeed Import/a/divdiv class=field-item odda href=/project/corsCORS/a/divdiv class=field-item evena href=/project/security_reviewSecurity Review/a/divdiv class=field-item odda href=/project/seckitSecurity Kit/a/divdiv class=field-item evena href=/project/draggableviewsDraggableViews/a/divdiv class=field-item odda href=/project/views_datasourceViews Datasource/a/div/div/divdiv class=field field-name-field-profiles field-type-user-reference field-label-abovediv class=field-labelTeam members:nbsp;/divdiv class=field-itemsdiv class=field-item evena href=/u/marc-delayMarc DeLay/a/divdiv class=field-item odda href=/u/drupalkellytDrupalKellyT/a/divdiv class=field-item evena href=/u/gjangelogjangelo/a/div/div/div

ActiveLAMP: Creating a deployable Docker image with Jenkins - Part 4

Wed, 01/20/2016 - 15:30
divimg src=http://activelamp.com/images/posts/docker-vagrant.png //divpMy previous posts talked about getting your local environment setup using the a href=https://hub.docker.com/_/drupal/Drupal Docker image/a with a href=https://www.vagrantup.com/Vagrant/a. It’s now time to bake a Docker image with our custom application code within the container, so that we can deploy containers implementing the a href=http://martinfowler.com/bliki/ImmutableServer.htmlimmutable server pattern/a. One of the main reasons we starting venturing down the Docker path was to achieve deployable fully baked containers that are ready to run in whatever environment you put them in, similar to what we’ve done in the past with a href=http://packer.ioPacker/a, as I’ve mentioned in a previous post./p a href=http://activelamp.com/blog/devops/jenkins-build-docker-images/Read more.../a

erdfisch: Drupal Business and Community Days - Der Business Part

Wed, 01/20/2016 - 15:17
span class=field field-node--title field-name-title field-type-string field-label-hiddenDrupal Business and Community Days - Der Business Part/span div class=field field-node--field-single-image field-name-field-single-image field-type-entity-reference field-label-visually_hidden div class=field-label visually-hiddenSingle image:nbsp;/div div class=field field-media--field-image field-name-field-image field-type-image field-label-hidden img src=https://erdfisch.de/sites/default/files/Boris%20Baldinger%20-%20Sprinting.jpg width=640 height=427 alt= title=Sprinting by Boris Baldinger typeof=foaf:Image / /div div class=copyrightBoris Baldinger - https://flic.kr/p/ps8ZgK/div /div span class=field field-node--created field-name-created field-type-created field-label-hidden20.01.2016/span span class=field field-node--uid field-name-uid field-type-entity-reference field-label-hiddenspan lang= about=/users/frank-holldorff typeof=schema:Person property=schema:name datatype=Frank Holldorff/span/span div class=field field-node--body field-name-body field-type-text-with-summary field-label-visually_hidden div class=field-label visually-hiddenBody:nbsp;/div pDrupal 8, das beste Drupal aller Zeiten, hat am 19. November 2015 das Licht der Welt erblickt und nimmt zunehmend Fahrt auf. Mit dem offiziellen Erscheinen des neuen Major Release Drupals ist das Interesse daran nochmals sprunghaft angestiegen. Immer mehr Agenturen setzen nun direkt Drupal 8 für umzusetzende Projekte ein. Auch steigt die aktive Nachfrage auf Seiten der Interessenten explizit nach Drupal 8 deutlich./p pMit dem Schwung, den die Version 8 mit sich bringt, kann Drupal in Deutschland ebenfalls größeres Gewicht erlangen und wird seinen Marktanteil weiter vergrößern. Das führt auch dazu, dass Drupal im Business Umfeld weiter an Relevanz gewinnt und zudem noch mehr Agenturen und Freenlancer das System für sich entdecken./p pAus diesem Grund haben wir uns entschlossen, das neue Konzept der a href=http://drupal-business-and-community-days.de/ title=Die Drupal Business and Community Days in HeidelbergDrupal Business and Community Days/a zu starten. Drupal ist Community, ganz klar! Aber auch Business. Und beides geht zusammen./p pDer Business Teil steht unter dem Motto „Von der Akquise bis zur Nachbetreuung“. Hier werden wir die einzelnen Schritte eines Projektes betrachten. Experten werden dazu Vorträge und Workshops anbieten, und es wird viel Gelegenheit zum Informationsaustausch geben, um den Teilnehmern auf diese Art Wissen, Tipps und andere Mehrwerte zu vermitteln./p pDie Vorträge werden innerhalb von 60-minütigen Sessions Wissenswertes zu Themen wie Lead-Marketing, Hosting, Infrastruktur, Entwicklung, Qualitätssicherung, Wartung und vielen weiteren Punkten vermitteln. Der Fokus der Sessions liegt hierbei darauf, Einblicke und Anregungen zu geben und konkret Anwendbares zu vermitteln./p pIn den großzügigen Pausen zwischen den Sessions bleibt genug Zeit, sich auszutauschen und zu vernetzen. Am Sonntag gibt es Zeit und Raum für Arbeits- und Gesprächsrunden, um einzelne Punkte zu vertiefen./p pDie Experten kommen zu einem großen Teil aus der Drupal Business Landschaft, aber nicht ausschließlich! Damit stellen wir sicher, nur Fachleute zu Gast zu haben, die nicht nur wissen wovon sie reden, sondern dies auch im täglichen Geschäft praktizieren./p pDie Vorträge richten sich in erster Linien an Drupal Agenturen, Freelancer aber auch an Entscheider, (Web)Projektmanager und IT-Leiter, die planen, Drupal einzusetzen./p pInteressierte erhalten hier einen Einblick wie in die einzelnen Projektschritte ablaufen, und auch, wie die Agenturen arbeiten. Eine gute Möglichkeit, sich den zukünftigen Dienstleister, Partner, Arbeitgeber oder Kunden einmal anzusehen./p pMit dem [Business Ticket](a href=https://www.eventbrite.de/e/drupal-business-community-days-heidelberg-2016-tickets-20015311335https://www.eventbrite.de/e/drupal-business-community-days-heidelberg-2…/a Tickets für die 1. Drupal Business and Community Days] haben Sie auch vollen Zugang zu dem Community Teil um dort direkt auch aktiv an Drupal mitzuwirken oder sich mit den Entwicklern, die aus mehreren Ländern Europas kommen, auszutauschen./p /div div class=field field-node--field-blog-tags field-name-field-blog-tags field-type-taxonomy-term-reference field-label-visually_hidden div class=field-label visually-hiddenSchlagworte/Tags:nbsp;/div a href=/blog/drupalbcdaysDrupalBCDays/a a href=/blog/eventevent/a a href=/blog/dc-planetdc-planet/a a href=/blog/taxonomy/term/345/0planet/a /div section class=field field-node--field-comments field-name-field-comments field-type-comment field-label-above comment-wrapper div class=comment-form-area div class=comment-form-area--container form class=comment-comment-form comment-form action=/comment/reply/node/343/field_comments method=post id=comment-form accept-charset=UTF-8 div class=form-item form-type-textfield form-item-name label for=edit-nameIhr Name/label input data-drupal-default-value=Anonymous type=text id=edit-name name=name value=Anonymous size=30 maxlength=60 class=form-text / /div input type=hidden name=form_build_id value=form-C3Qx13Aj3rEFTlJM5gDgFOpNHiQZtHNLkMnaoAbpyQc / input type=hidden name=form_id value=comment_comment_form / input type=hidden name=honeypot_time value=1453384546 / div class=field-type-text-long field-name-comment-body field-widget-text-textarea form-wrapper id=edit-comment-body-wrapper div class=text-format-wrapper form-item div class=form-item form-type-textarea form-item-comment-body-0-value label for=edit-comment-body-0-value class=form-requiredKommentar/Comment/label div class=form-textarea-wrappertextarea class=text-full form-textarea required resize-vertical id=edit-comment-body-0-value name=comment_body[0][value] rows=5 cols=60 placeholder= required=required aria-required=true/textarea/div /div /div /div div class=form-actions form-wrapper id=edit-actionsbutton type=submit id=edit-submit name=op value=Kommentar hinzufügen/Add comment class=button button--primary form-submitspanKommentar hinzufügen/Add comment/span/button /div div class=url-textfielddiv class=form-item form-type-textfield form-item-url label for=edit-urlLeave this field blank/label input autocomplete=off type=text id=edit-url name=url value= size=20 maxlength=128 class=form-text / /div /div /form /div /div /section

Modules Unraveled: 152 What to Do About Drupal 6 End of Life on Feb 24th 2016 with David Snopek - Modules Unraveled Podcast

Wed, 01/20/2016 - 07:00
div class=field field--name-field-image field--type-image field--label-hiddendiv class=field__itemsdiv class=field__item evenimg typeof=foaf:Image src=https://modulesunraveled.com/sites/default/files/styles/podcast_default/public/podcast/image/David%20Snopek_0.jpg?itok=kdYu6YJq width=211 height=171 alt=Photo of David Snopek //div/div/divspan class=submitted-byPublished: Wed, 01/20/16/spandiv class=field field--name-field-podcast-file field--type-file field--label-hiddendiv class=field__itemsdiv class=field__item evendiv class=mediaelement-audioaudio src=http://traffic.libsyn.com/modulesunraveled/152_What_to_Do_About_Drupal_6_End_of_Life_on_Feb_24th_2016_with_David_Snopek_-_Modules_Unraveled_Podcast.mp3 class=mediaelement-formatter-identifier-1453280779-0 controls=controls /audiodiv class=mediaelement-download-linka href=http://traffic.libsyn.com/modulesunraveled/152_What_to_Do_About_Drupal_6_End_of_Life_on_Feb_24th_2016_with_David_Snopek_-_Modules_Unraveled_Podcast.mp3Download this episode/a/div/div/div/div/divdiv class=field field--name-body field--type-text-with-summary field--label-hiddendiv class=field__itemsdiv class=field__item even property=content:encodedh2Drupal 6 End of Live/h2 ulliWhat does Drupal 6 EOL mean?/li liWhen is Drupal 6’s End-Of-Life (EOL)? ulliFebruary 24th/li /ul/li liWhy is support for Drupal 6 being dropped by the Drupal project in the first place? (ie. why does our community even do this?) ulliWhat makes Drupal 6’s End-of-Life (EOL) different than previous ones (ie. Drupal 5)?/li /ul/li liWhat, specifically, will happen after February 24th? ulliAll D6 modules will be marked as “unsupported” on Drupal.org - which will mean the ‘update’ module will start telling you that ALL your modules are out-of-date/li liAlso, the status information that the ‘update’ module uses could go away at any time - so, you’ll no longer be able to rely on that in general (myDropWizard or another vendor MAY create a replacement for the ‘update’ module…)/li liThe Drupal security team will no longer be making Security Advisories (or coordinating security releases)/li liIn general, most module maintainers will no longer pay attention to Drupal 6 issues and will stop making new releases/li /ul/li liWhat should people with Drupal 6 sites do? ulliArchive the site, or/li liPlan upgrade, and/li liIf you can’t upgrade by February 24th, buy Drupal 6 Long-Term Support from one of the “official” vendors: ullihttps://www.drupal.org/node/2646980/li /ul/li /ul/li liWhat makes the “official” vendors special (vs. any other vendor)? ulliGet confidential information from Drupal security team/li liAgree to follow security team processes and release all security patches publicly/li liWere vetted by the Drupal security team/li /ul/li liHow will the Drupal 6 LTS work? ulliSame process as security team - but work done by vendors rather than security team/li liWill publish patches on the D6LTS project: ullihttps://www.drupal.org/project/d6lts/li /ul/li liLikely, but not 100% decided: ulliAnnounce new patches on the D6LTS issue queue/li liMake new Pressflow 6 releases with the Drupal core patches/li /ul/li /ul/li liSo, can the community get this without working with a vendor? ulliYes!/li liBut each vendor only supporting those modules their customers depend on/li liAnd what about security issues that hackers find first?/li /ul/li liWhat does myDropWizard.com do? And how is your offer different than the other vendors? ulli“myDropWizard.com provides 24/7 support and maintenance from Drupal experts for a fixed monthly fee. We keep your site online, up-to-date and secure!”/li liOur Drupal 6 Long-Term Support offer: ullihttp://www.mydropwizard.com/drupal-6-lts/li limaking security fixes/li lifixing bugs/li liperforming one-off maintenance and support tasks on request/li ligetting your site back online in the case of an outage, and/li liremediation if your site gets hacked./li /ul/li liBasically, keep your site online and secure until you’re ready to upgrade - and we can help with a D7 or D8 upgrade as well/li /ul/li liTechnical questions about how we do what we do?/li liYour offering includes a whole bunch of stuff! Why don’t you have a “security updates only” offering?/li /ul/div/div/divdiv class=field field--name-field-items-mentioned field--type-link-field field--label-abovediv class=field__labelEpisode Links:nbsp;/divdiv class=field__itemsdiv class=field__item evena href=http://drupal.org/u/dsnopek rel=nofollow target=_blankDavid on drupal.org/a/divdiv class=field__item odda href=http://twitter.com/dsnopek rel=nofollow target=_blankDavid on Twitter/a/divdiv class=field__item evena href=http://www.mydropwizard.com/drupal-6-lts rel=nofollow target=_blankmyDropWizard.com/a/divdiv class=field__item odda href=https://modulesunraveled.com/support%40mydropwizard.com rel=nofollow target=_blankEmail myDropWizard/a/divdiv class=field__item evena href=https://www.drupal.org/project/d6lts rel=nofollow target=_blankD6LTS Project/a/divdiv class=field__item odda href=https://www.drupal.org/node/2646980 rel=nofollow target=_blankD6 Long-term-support Official Vendors/a/div/div/divdiv class=field field--name-field-tags field--type-taxonomy-term-reference field--label-abovediv class=field__labelTags:nbsp;/divdiv class=field__itemsdiv class=field__item evena href=/tags/drupal-6 typeof=skos:Concept property=rdfs:label skos:prefLabel datatype=Drupal 6/a/divdiv class=field__item odda href=/tags/security typeof=skos:Concept property=rdfs:label skos:prefLabel datatype=Security/a/divdiv class=field__item evena href=/planet-drupal typeof=skos:Concept property=rdfs:label skos:prefLabel datatype=planet-drupal/a/div/div/div