Kategorien
Debugging Deployment Linux MySQL Server Shell

Search / Replace with SED without escaping slashes

As you might know, you can use any delimiter to use the search/replace feature of sed to avoid extreme escaping of slashes.

~/ sed -r -e 's@http://google.com/@http://example.com/@g' < input.file > output.file
Kategorien
Debugging Deployment GIT Server Versionierung

GIT get all files a user changed

Get all the files a user changed in a GIT repository with this command:

git log --pretty="%H" --author="git.user.name" | while read commit_hash; do git show --oneline --name-only $commit_hash | tail -n+2; done | sort | uniq
Kategorien
Frameworks Kohana Linux Nginx Server Shell

Kohana 2.3 NGINX htaccess like URL rewrite

Um Kohana 2.3 auf NGINX mit sauberen URLs zu konfigurieren geht folgende NGINX server config:

server {
        server_name example.com www.example.com;
        listen   80;

        root /srv/www/example.com/pages/;
        access_log /srv/www/example.com/logs/access.log;
        error_log /srv/www/example.com/logs/error.log;

        index index.php index.html index.htm;

        try_files $uri $uri/ @rewrite;

        location @rewrite {
                rewrite ^/(.*)$ /index.php/$1;
        }

        location ~ \.php {
                fastcgi_index index.php;
                fastcgi_pass 127.0.0.1:9000;

                include fastcgi_params;
                fastcgi_split_path_info ^(.+\.php)(/.+)$;
                fastcgi_param PATH_INFO $fastcgi_path_info;
                fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                fastcgi_param ENV "production";
        }
}
Kategorien
Debugging Linux PHP Server Shell

wo ist das php log auf diesem Server

wer sich das ab und an fragt, kann mit

php -i | grep log

angezeigt bekommen, wo die aktuelle php installation ihre logs hinschreibt.

Kategorien
Linux Postfix Server Shell

postfix und domain mail forwarding

um mails an domains deines server zu echten mail adressen weiterzuleiten, geht mit postfix folgendes:


# öffne /etc/postfix/main.cf 
inet_interfaces = all

# am ende einfügen
virtual_alias_domains = hash:/etc/postfix/virtual_domains
virtual_alias_maps = hash:/etc/postfix/virtual

# in der  /etc/postfix/virtual_domains die domains eintragen
mydomain.com OK
myotherdomain.com OK

# in der  /etc/postfix/virtual die weiterleitungen eintragen (2ter eintrag ist ein catchall)
mail@mydomain.com myrealaddress@gmail.com, myotherrealaddress@gmail.com
@myotherdomain.com myrealaddress@gmail.com

# adde neues mapping zur postmap (wenn noch nicht vorhanden)
$ postmap /etc/postfix/virtual_domains
$ postmap /etc/postfix/virtual

# reload / restart postfix config
$ service postfix reload

beachte das beim testen dieser mails bspw. bei gmail eine loop detection zum einsatz kommt, die verhindert das du mails weitergeleitet bekommst die du mit dem selben gmail account absendest. gmail alias addressen als absender hingegen funktionieren.

Kategorien
Linux Server Shell

linux (ubuntu) user add mit home und shell

um einen neuen user mit eigenem /home/user verzeichnis und shell zu erzeugen geht folgendes auf der console

~$ useradd -s /bin/bash -m mynewuser
Kategorien
Deployment Linux Server Shell

scp (secure copy) von server zu server

um schnell (ohne evtl. nfs mount flaschenhälse) dateien von server zu server zu kopieren, kann man scp benutzen.
auf dem ziel server einloggen und:

~ $ scp user@ip_or_domain:path/to/remote/file /path/to/local/dir/   
Kategorien
Debugging Frameworks Kohana PHP Server

howto get kohana 3.3.x or 3.2.x up and running when default route failes after fresh installation

copy the system/classes/kohana/request.php to your application/classes/kohana/request.php directory and open the file.
edit the file at around line 332 in the detect_uri method.


	public static function detect_uri()
	{

		...

		// cut out the initial base part to make sure the internal routing will get correct input
		$uri = str_replace(Kohana::$base_url.Kohana::$index_file, '', $uri);
		return $uri;
	}

Kategorien
Deployment Server SVN Versionierung

rekursives löschen von .svn ordnern

mit folgendem befehl kann man rekursiv .svn ordner löschen:

rm -rf `find . -type d -name .svn`
Kategorien
Deployment Frameworks Kohana PHP PHPUnit Server XML

kohana 3.1 unittest mit phpunit

wie man das kohana unittest modul richtig einbindet um für seine applikation bzw. module ein taugliches testframework zu haben, ist hier blog.lysender.com trefflich beschrieben.