Foros del Web » Programando para Internet » PHP » CodeIgniter »

.htaccess 500 Internal Server Error

Estas en el tema de .htaccess 500 Internal Server Error en el foro de CodeIgniter en Foros del Web. Muy buenas, tengo problemas al configurar mi .htaccess. Busco quitar el "index.php" que aparece en la URL. Consigo que CI funcione a la perfección en ...
  #1 (permalink)  
Antiguo 31/10/2011, 09:44
 
Fecha de Ingreso: mayo-2011
Mensajes: 20
Antigüedad: 13 años, 6 meses
Puntos: 0
.htaccess 500 Internal Server Error

Muy buenas, tengo problemas al configurar mi .htaccess. Busco quitar el "index.php" que aparece en la URL. Consigo que CI funcione a la perfección en localhost pero al subirlo al ftp me salta el siguiente error:

Código PHP:
Ver original
  1. Internal Server Error
  2.  
  3. The server encountered an internal error or misconfiguration and was unable to complete your request.
  4.  
  5. Please contact the server administrator, webadmin@kundenserver.de and inform them of the time the error occurred, and anything you might have done that may have caused the error.
  6.  
  7. More information about this error may be available in the server error log.
  8.  
  9. Additionally, a 500 Internal Server Error error was encountered while trying to use an ErrorDocument to handle the request.

Este es el contenido de .htaccess:

Código PHP:
Ver original
  1. Options +FollowSymLinks
  2. <IfModule mod_rewrite.c>
  3.     RewriteEngine on
  4.  
  5.     RewriteCond %{REQUEST_FILENAME} !-f
  6.     RewriteCond %{REQUEST_FILENAME} !-d
  7.     RewriteRule ^(.*)$ index.php?/$1 [L]
  8. </IfModule>
  9.  
  10. <IfModule !mod_rewrite.c>
  11.     ErrorDocument 404 /index.php
  12. </IfModule>

¿Alguien sabe como hacer que funcione también en el ftp? Saludos y muchas gracias!
  #2 (permalink)  
Antiguo 31/10/2011, 16:19
 
Fecha de Ingreso: julio-2008
Ubicación: Barcelona
Mensajes: 2.100
Antigüedad: 16 años, 4 meses
Puntos: 165
Respuesta: .htaccess 500 Internal Server Error

Seguramente en tu servidor de producción tengas un directorio antes que index.php, por ejemplo httpdocs o similar.

Puedes hacer un fichero test.php con algo como,

echo dirname(__FILE__);

De esta manera obtendrás el absolute path.

Si no, mira aver si as colocado bien el fichero donde toca, y mira si el server tiene instalado mod rewrite.

Un saludo!
__________________
Gracias por el Karma :D

empleo ofertas de trabajo
  #3 (permalink)  
Antiguo 31/10/2011, 17:36
 
Fecha de Ingreso: mayo-2011
Mensajes: 20
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: .htaccess 500 Internal Server Error

Muchas gracias por la ayuda. El absolute path me da la siguiente ruta: /homepages/6/d389243619/htdocs

- Si estoy en la raíz (www.dominio.com) funciona.
- Los links (con el index.php desactivado, en teoría) me mandan a www.dominio.com/home. Pero no funciona, sale el error 500.
- Si en vez de pinchar el enlace escribo www.dominio.com/index.php/home me manda al sitio correcto.

En el archivo config.php tengo lo siguiente:

$config['index_page'] = '';
$config['uri_protocol'] = 'QUERY_STRING';

Alguna idea de porque necesita el index.php en la URL si en teoría esta desactivado?
  #4 (permalink)  
Antiguo 31/10/2011, 17:55
 
Fecha de Ingreso: julio-2008
Ubicación: Barcelona
Mensajes: 2.100
Antigüedad: 16 años, 4 meses
Puntos: 165
Respuesta: .htaccess 500 Internal Server Error

Mil disculpas, en tu .htaccess, tienes que poner el path a partir del público, es decir, "/index.php"

Con eso te debería funcionar. Si abajo te funciona y arriba no, seguramente sea porque no tienes mod reewrite instalado...

Te dejo un link para comprobar si lo tienes instalado.

http://www.wallpaperama.com/forums/h...abled-t40.html

De todas formas, te paso mi .htaccess, tienes un condicional abajo donde puedes poner una url en caso de no estar instalado, así podrás comprobar si esta o no.

Suerte,


<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /

#Removes access to the system folder by users.
#Additionally this will allow you to create a System.php controller,
#previously this would not have been possible.
#'system' can be replaced if you have renamed your system folder.
RewriteCond %{REQUEST_URI} ^system.*
RewriteRule ^(.*)$ /index.php?/$1 [L]

#When your application folder isn't in the system folder
#This snippet prevents user access to the application folder
#Submitted by: Fabdrol
#Rename 'application' to your applications folder name.
RewriteCond %{REQUEST_URI} ^application.*
RewriteRule ^(.*)$ /index.php?/$1 [L]

#Checks to see if the user is attempting to access a valid file,
#such as an image or css document, if this isn't true it sends the
#request to index.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$/index.php?/$1 [L]
</IfModule>

<IfModule !mod_rewrite.c>
# If we don't have mod_rewrite installed, all 404's
# can be sent to index.php, and everything works as normal.
# Submitted by: ElliotHaughin

ErrorDocument 404 /index.php
</IfModule>
__________________
Gracias por el Karma :D

empleo ofertas de trabajo
  #5 (permalink)  
Antiguo 31/10/2011, 19:40
 
Fecha de Ingreso: mayo-2011
Mensajes: 20
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: .htaccess 500 Internal Server Error

Pues muchas gracias por la ayuda, pero parece que el server no tiene mod_rewrite. Voy a tener que mantener las urls con index.php o hay alguna alternativa?

Saludos!
  #6 (permalink)  
Antiguo 01/11/2011, 04:24
 
Fecha de Ingreso: julio-2008
Ubicación: Barcelona
Mensajes: 2.100
Antigüedad: 16 años, 4 meses
Puntos: 165
Respuesta: .htaccess 500 Internal Server Error

No puedes instalarlo? no puedes ponerte en contacto con tu proveedor y pedirlo?

Un saludo!
__________________
Gracias por el Karma :D

empleo ofertas de trabajo

Etiquetas: 500, internal, php, server
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:02.