Please specify the install prefix of iconv with –with-iconv

Error message

configure: error: Please specify the install prefix of iconv with --with-iconv=

Related to

MAMP compilation of PHP extensions as e.g. pnctl or mongo as described e.g. at http://adam.merrifield.ca/2014/09/21/php-mongodb-and-mamp/ or http://linhmtran168.github.io/blog/2013/12/10/setup-boris-with-mamp-in-mac-osx-mavericks/

Solution

run configure without iconv support:

./configure --without-iconv

FastCGI, PHP, Symfony2 with basic auth not working

Just had a little issue that seams to be common in the web. Got a new server with Plesk 11 (sorry for that) and it took me nearly a day to get it working and setup for capifony deployment of Symfony2 projects.

The typical issues with not correctly set access rights for the root directory of the project (should be 755), manually editing of parameters.ini and other stuff was ok. But what nearly killed me was that my Plesk installation always returned a 503 when running PHP as apache module. FastCGI was default and seemed to be working, so I went with this.

Unfortunately this did not work with the admin interface that was running in a “virtual” subdirectory. It was not possible to login. In the background it is using the default, simple, boring and potentially unsecure basic authentification.

Did you know that there is a problem with FastCGI, Symfony2 and basic authentification? I did not, but know I know. It is fixed in the current release (2.0.16) – which is good. But unfortunately there is a RewriteRule that has to be written inside your web/.htaccess. Check the comment in src/symfony/src/Symfony/Component/HttpFoundation/ServerBag.php:

* php-cgi under Apache does not pass HTTP Basic user/pass to PHP by default
* For this workaround to work, add this line to your .htaccess file:
* RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
*
* A sample .htaccess file:
* RewriteEngine On
* RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

Unfortunately, I tried a different line that was written in the ticket above:

RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]

This did not work, but resulted in 401 results for all requests. Just remove the ,l which means that this .htaccess file will be left.

So if you are running a Symfony2 project with FastCGI, add this line to your web/.htaccess file:

RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

Adsense widget for Geckoboard

enarion.net released a widget to display the revenues from Google Adsense in your Geckoboard.

Google Adsense widget for GeckoboardAll you have to do is to install the widget code (php-based) on your webserver and add a new custom widget to your Geckoboard widget. Various timespans (including today, yesterday, current month, last month) and values (e.g. ecpm, earnings and clicks) can be selected. Values are extracted in realtime from the Google Adsense account, providing up to the minute information.

The code is released under the GPL license and can be used and modified without charge.

Further information and the download can be found at http://enarion.net/tools/geckoboard-adsense-widget/.

About Geckoboard

You can create, run and share dashboards showing various key / performance values using the webservice Geckoboard. The setup is easy, there are many predefined widgets for various web services including Google Analytics, ZenDesktop, Mailchimp and various more.

About enarion.net

Providing open source tools and development knowledge to the public is the aim of enarion.net. It was founded by Tobias Kluge as home of phpSitemapNG years ago, a tool to generate Google sitemaps.

Plesk 8 installation on debian 4

Installing Plesk 8.x on debian 4.x “etch” seems a bit uncommon, but the mixture of a rockstable and secure base system as debian and the common webserver management interface Plesk makes sense.

How to install Plesk on debian

  1. Install a fresh debian and perform a dist-upgrade:
    apt-get update && apt-get dist-upgrade
  2. Add the following line to the apt sources list located at /etc/apt/sources.list (replace 8.2.1 and etch with your versions)
    deb http://autoinstall.plesk.com/debian/PSA_8.2.1 etch all
  3. Force apt-get to update database with new information from Plesk
    apt-get update
  4. Install Plesk base system with apt-get, say Yes to accept the packages from Plesk that have a problematic signature.
    apt-get install psa
  5. Install Plesk Autoupdate module with apt-get:
    apt-get install psa-autoinstaller
  6. Install package with PHP5 suport for Plesk
    apt-get install psa-php5-configurator
  7. Restart PSA – don’t forget this! Otherwise you’ll get 404 errors instead the login page.
    /etc/init.d/psa restart
  8. Access the fresh installed Plesk interface with your browser (replace your-server-name with the url/ip of your server). The default login is admin, the default password setup.
    https://your-server-name:8443/
  9. That’s it. The rest can be done via the Plesk interface.

More information can be found in the Plesk v8.2.1 build82070918.10 for Debian-4.0 x86_64 Release Notes.