[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [Solución:] apache y motores de busqueda



> Para evitar que alguien me pueda meter http://dominio.com/mysql_connect.inc
> lo que hago es meter una "rule" para cada dominio, al estilo
> 
> RewriteEngine on
> RewriteRule ^/mysql_connect.inc$   /index.html  [L]
> 
> Asín, http://dominio.com/mysql_connect.inc me muestra la página
> http://dominio.com/index.html, y asi nadie puede cojer el mysql_connect.inc.

El modo - chapucero para evitar incluso tener que poner esa regla, es tener TODOS LOS INCLUDES en un directorio externo al directorio de la web, que no sea visible desde el exterior. Imagínate que NO tienes permisos para tocar la configuración del Apache, ¿qué harías?

Yo, normalmente, configuro los dominios de esta forma ([dominio] no lleva la www, por ej, icesoft.org):
  /webs/[dominio]/cgi-bin  => los CGIs
  /webs/[dominio]/db       => las bases de datos
  /webs/[dominio]/htdocs   => las páginas web
  /webs/[dominio]/libs     => las librerías
  /webs/[dominio]/tpl      => las plantillas (suelo utilizar FastTemplate)

Y direis, ¿por qué metes todo en /webs? ¿incluso las bases de datos? Porque así, cuando preparo el servidor, dejo la mayoría de espacio en esa partición, para meter TODO lo que corresponde al servicio de las webs en el mismo sitio.

en el php.ini, le meto lo siguiente:
  include_path    = ".:../lib:/webs/.lib/icelib:/webs/.lib/misc:/webs/.lib/phplib"
es decir, que coja esos directorios como la ruta para los includes, o sea, que si yo tengo un fichero en /webs/.lib/icelib, llamado ice.auth.class, lo puedo utilizar desde una página php con sólo poner: <? include("ice.auth.class"); ?>

y, en la configuración del apache (para ese vhost):
  <VirtualHost [dominio]>
    ServerName   [dominio]
    ServerAlias  [dominio] www.icesoft.org
    ServerAdmin  webmaster@[dominio]
    ScriptAlias  /cgi-bin/ /webs/[dominio]/cgi-bin/
    DocumentRoot /webs/[dominio]/htdocs
    <Directory "/webs/[dominio]/htdocs">
      Options Includes ExecCGI SymLinksIfOwnerMatch
      AllowOverride All
      Order allow,deny
      Allow from all
    </Directory>
  </VirtualHost>
con esta configuración, se puede utilizar fácilmente el módulo vhost_alias del Apache ya que todos los dominios los pongo + o - igual.

PD. Espero no haber aburrido a algunos, ya sé que esto la mayoría lo tenéis + que machacado ;-)

-- 
Salu2,
  Francisco Javier Ahijado            \|||/            User              -o)
  iCesofT on [irc-hispano]            (o o)            Registered         /\
  http://www.icesoft.org        ---ooO-(_)-Ooo---      Linux #113.351    _\_v
------------------------------------------------------------------------------
"Cuanto más planifique el hombre su proceder, más fácil le será a la
casualidad encontrarle"
      Friedrich Dürrenmatt  



Reply to: