Doctrine ne permet pas à l’heure actuelle de se connecter à un serveur Microsoft SQL server. Voici une astuce pour le faire. Continuer la lecture de « Symfony2 ou Silex + Doctrine + Linux connection MSSQL »
Installation d’un serveur ubuntu lamp
Installer ubuntu normalement (ne pas faireles pré-installations proposé (ex : lamp))
Activer le compte root
sudo passwd root
Installer ssh
apt-get install ssh
Mettre une IP statique
nano /etc/network/interfaces
Modifier comme suit :
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto eth0
iface eth0 inet static
address 192.168.1.62
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1
redémarrer le service réseau :
/etc/init.d/networking restart
Installer le LAMP
apt-get install apache2 php5 mysql-server libapache2-mod-php5 php5-mysql php5-sqlite phpmyadmin
Créer un utilisateur php (ex : phpuser)
Personnellement je me crée un utilisateur phpuser qui appartient au groupe www-data et qui à le droit de se connecter en ssh.
Ensuite pour développer je me connecte avec ce compte il suffit que dans le www
– les dossiers soient en chmod 775 au lieu de 755
– les fichiers soient en chmod 664 au lieu de 644
on résout ainsi les problèmes de droit d’exécution des fichiers tout en maintenant la sécurité
PROCEDURE :
#créer le user :
useradd phpuser
#Ajouter le user dans le groupe www-data :
usermod -a -G www-data phpuser
#Pour vérifier les groupes du user :
groups phpuser
#forcer le user phpuser à écrire en 775/664 plutôt que 755/644
umask 002 >> /home/phpuser/.profile
#forcer le user www-data à écrire en 775/664 plutôt que 755/644
umask 002 >> /etc/apache2/envvars
#on se déplace vers /var
cd /var/
#on change le groupe du www
chown www-data:www-data www
chown -R www-data:www-data www/*
#On positionne le GID bit : les fichiers et dossiers créés appartiendront au groupe www-data
chmod g+s www
on met à jour les droits sur les fichiers & dossier existant s’il y en a
chmod -R g+w www/*
find www -type d -exec chmod g+s {} \;
OPTIONNEL : ajout du de votre certificat ssl pour le user
mkdir /home/phpuser/.ssh
nano /home/phpuser/.ssh/authorized_keys
#copier la clé publique
chown -R phpuser:phpuser /home/phpuser/.ssh/ /home/phpuser/.ssh/*
chmod 700 /home/phpuser/.ssh/
Nettoyer un fichier rtf : rtf to txt
Si vous devez nettoyer des données mises en forme en rtf, en gros : RTF => TXT
Voici un script qui peut vous aider par contre vous devez installer unrtf sur votre serveur (testé sur ubuntu)
- Installation de unrtf :
sudo apt-get install unrtf
Ressources : http://www.gnu.org/software/unrtf/unrtf.html
- Le script :
/**
* Dans cette exemple le rtf est une chaine de caractere mais cela peut être un fichier text.
* Sources :http://www.gnu.org/software/unrtf/unrtf.html
*/
$str ='{\rtf1\ansi\ansicpg1252\deff0\deflang1036{\fonttbl{\f0\fswiss\fprq2\fcharset0 Arial;}{\f1\fnil\fcharset0 MS Shell Dlg;}}{\*\generator Msftedit 5.41.21.2509;}\viewkind4\uc1\pard\f0\fs17 samples sent from Pronic Inc in Michigan to\par Main Factory in France\par FEDEX Invoice# 544425\par .\par \pard\f1\fs17 Payment Terms : \par - Deposit of 10% at reception of die design = 244.74 USD\par - Balance of 40% at delivery at the stamping facility (30 days net) = 911.59 USD\par - Balance of 5% after DDAP (60 days maximum after delivery i.e. maximum 02/5/2011) = 63.69 USD\par \pard - Balance of 5% after final customer approval (120 days maximum after delivery i.e. maximum 04/5/2011) = 63.69 USD\f0\fs17\par } ';
$rtfbuf = strtr($str, array("\r\n"=>"","\t"=>""));
file_put_contents("in", utf8_decode($str));
$last_line = system('unrtf -t text in > out', $retval);
$rtfbuf = file_get_contents("out");
$rtfbuf = explode(chr(10),$rtfbuf);
$rtftest=false;
if(count($rtfbuf)<>0){
foreach($rtfbuf as $v) {
if($rtftest) $rtfout[]= $v.chr(10);
elseif(trim($v) =="-----------------") $rtftest=true;
else continue;
}
}
print_r($rtfout);