Si usas Subversion con svn checkout y svn update para mantener tu servidor de producción actualizado (y no svn export) estarás creando unos directorios ocultos de subversion con nombre .svn que contienen información que puede suponer un riesgo para la seguridad, ya que seguramente estarán en el directorio público httpdocs y serán visibles a todo el mundo. Puedes evitar que los navegantes accedan a ellos de dos maneras:
a) Si tienes acceso como root
Puedes crear un archivo vhost:
# vim /var/www/vhosts/dominio.com/conf/vhost.conf
Con este código:
<DirectoryMatch .*\.svn/.* >
Deny From All
</DirectoryMatch >
Tras hacer esto recuerda que has de decirle a Plesk que tiene que regenerar los archivos de configuración de apache
# /usr/local/psa/admin/sbin/websrvmng -u --vhost-name=dominio.com
b) Si no puedes acceder como root
Entonces tienes que crear un archivo .htaccess en el directorio httpdocs (si es que no existía ya)
# vim /var/www/vhosts/dominio.com/httpdocs/.htaccess
y añadirle este código:
RewriteEngine on
RewriteRule .*\.svn/.* - [F]
10:57, 21.02.2010
Hola, tengo un problema de permisos de ficheros, al lanzar desde wordpress una actualizacion, el problema es que apache crea el fichero con un usuario que NO tiene permisos, sabes como puedo corregir que un fichero se cree con permisos 777 o 766 o algo asi? gracias
12:44, 21.02.2010
Es extraño, porque mi Wordpress guarda los archivos con el usuario del dominio de Plesk. De hecho, una de las cosas que me gustan de Plesk, es que para cada dominio, apache se ejecuta con el usuario de ese dominio.
Has mirado que el directorio “uploads” tenga permisos 777?
Desde php puedes usar de todas maneras las funciones chmod y chown para ponerle 777 a los archivos o para cambiarles el propietario.
13:53, 23.02.2010
Si que tiene permisos 777, mira lo que me ocurre:
http://foros.ovh.es/showthread.php?t=6302
El fichero lo crea como usuario Apache y los ficheros que he subido por ftp los crea con el usuario de dominio que tu comentas, si al crear el tmp lo hiciera con ese usuario de dominio, todo seria perfecto, pero el problema es que no lo hace, no se que probar? me puede ayudar? gracias
16:21, 23.02.2010
Mira de ejecutar PHP como un CGI y no como un módulo de apache.
Esto lo puedes cambiar con Plesk entrando en: Dominio > Sitio web > Ajustes de Alojamiento web > soporte PHP.
Prueba las opciones que da esa casilla. Para probar necesitarás reiniciar apache: inicio > administración de servicios > Servidor web (Apache) > Reiniciar
22:39, 28.02.2010
Ya lo solucione, no tiene demasiada logica, al menos lo he comprobado 2 veces, si el sistema es 64Bits falla, si es 32Bits funciona… he restaurado 4 veces las imagenes del servidor, CentOS 32 y CentOS 64. Entiendo que todo tiene una razón, pero esta no se cual es.
23:46, 10.03.2010
Me alegro Joan. Aquí estamos para la próxima.
Por cierto, si alguien no lo consigue arreglar, las pistas son FastCGI o mod_suphp … a ver si lo investigo más y escribo un post sobre esto