Redirecting Apache HTTP to HTTPS

Now that everyone can enjoy and use free SSL certificates from Let’s Encrypt, let’s all encrypt!

To forward HTTP requests to secure HTTPS, there are multiple options.

If you’re using some kind of panel to edit Apache configuration (like ISPConfig) that does not allow to edit the virtual host for HTTP separate from the virtual host for HTTPS, you can use this configuration in both configuration containers:

RewriteEngine on
RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R]

If you’re able to edit the virtual host for HTTP separately, Apache recommends using “Redirect”: http://httpd.apache.org/docs/current/rewrite/avoid.html#redirect

<VirtualHost *:80>
    ServerName www.example.com
    Redirect "/" "https://www.example.com/"
</VirtualHost>

<VirtualHost *:443>
    ServerName www.example.com
    # ... SSL configuration goes here
</VirtualHost>

By the way: if you’re using ISPConfig, I can recommend installing the Let’s Encrypt plugin from https://github.com/alexalouit/ISPConfig-letsencrypt. The plugin will be included into the upcoming new version of ISPConfig >3.1.

Must-have software tools

Spotify, Sublime, Cmder
Spotify, Sublime, Cmder

I’m starting to build my list of software that is the first to install on a new system:

Multi-platform:

Windows:

  • Cmder – finally a really nice console for Windows with almost everything I’m used to from Linux, includes git command line and tab auto-complete (with ending slash 😛 )
  • (Clover – tabbed windows explorer – I’m experiencing some issues with clover and currently don’t use it)
  • Greenshot – advanced screenshot creation and editing
  • Microsoft Visual Studio (C# web development)
  • Ditto (Clipboard Manager)
  • KatMouse (scroll in inactive window)
  • 7-zip

Linux:

The obvious (for completeness sake) and then some…

Software development stuff

Also a lot is going on in the browser I guess. These are some of the most important web tools I use every day:

Howto: Task and issues tracking with Redmine and Eclipse Mylyn

While working on one of my current projects I came to realize the importance of good task management and issue tracking. Sadly the use of an expensive Team Foundation Server does not guarantee good task tracking when the tasks are only used to do the rough planning in MS Project. Much more important than the tool being used, is to use any tool in a good and efficient way. Even for projects with one single developer, using task management helps to keep track of the progress and to work and focus on subtasks.

Redmine

There are a lot of issue tracking and project management tools out there. I’ve been using trac for quite some time in different projects but then I have been looking for a tool that does the same stuff but allows to manage multiple projects within one instance. After installing Redmine the search was over 😉 Redmine comes with a big feature list and in addition there are some handy plugins, most mentionable the Stuff-To-Do plugin.

To enable synchonization between Eclipse Mylyn and Redmine, the Mylyn Connector plugin needs to be installed in Redmine. To do that, simply cd to your Redmine root dir and run

ruby script/plugin install git://redmin-mylyncon.git.sourceforge.net/gitroot/redmin-mylyncon/redmine-mylyn-connector

Depending on your type of installation, a webserver restart may be required. In addition to the plugin, also make shure that “Enable REST web service” is activated in the Redmine Authentication Settings.

Eclipse & Mylyn

Two Features need to be installed in Eclipse in Order to use the Redmine task integration: Mylyn and the Redmine Mylyn Connector. These Features can simply be installed using these Update Sites:

Mylyn: http://download.eclipse.org/tools/mylyn/update/helios

Redmine Mylyn Connector: http://redmin-mylyncon.sourceforge.net/update-site/N/

After installing these Features, open the “Task Repositories” view and add a Task Repository with these self-explanatory settings:

When the settings have been successfully validated and the new task repository has been created, a new dialog is presented to create the first query for the task repository. The task list can be filtered by every available field of the Redmine task repository. As a result of the query the Task List view gets populated with the task items of your Redmine instance.

The combination of the Eclipse Mylyn and Redmine also provides a bunch of additional features such as time-tracking of individual work items, to filter displayed items by the active working set linked with the selected task and a whole lot more…

And always remember: The most important point is to use project and task tracking in the first place 🙂