Soy un principiante en Codeigniter y vi un tutorial de CI y solo estaba tratando de hacer algo simple. Descargué el CI y agregué este archivo al directorio del controlador, pero no funcionará.
<?php
class site extends CI_Controller
{
public function index()
{
echo "Hello World";
}
function dosomething()
{
echo "Do Something";
}
}
?>
Cuando intento acceder a él usando http: //..../index.php/site , obtengo el resultado ... "no se ha especificado ningún archivo de entrada" ... por cierto, llamé al archivo site.php
codeigniter
php
koool
fuente
fuente
Respuestas:
Solo agregue el ? firmar después de index.php en el archivo .htaccess:
RewriteEngine on RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ index.php?/$1 [L]
¡y funcionaría!
fuente
RewriteRule ^(.*)$ /sub-directory/index.php?/$1 [L,QSA]
El hosting de Godaddy parece arreglado
.htaccess
, yo mismo está funcionandoRewriteRule ^(.*)$ index.php/$1 [L]
a
RewriteRule ^(.*)$ index.php?/$1 [QSA,L]
fuente
RewriteRule ^(.*)$ /sub-directory/index.php?/$1 [L,QSA]
Encontré la respuesta a esta pregunta aquí ... El problema era el servidor de alojamiento ... Agradezco a todos los que lo intentaron ... Espero que esto ayude a otros
Consejos de instalación de Godaddy
fuente
RewriteRule ^(.*)$ /sub-directory/index.php?/$1 [L,QSA]
RewriteEngine, DirectoryIndex en el archivo .htaccess de las aplicaciones CodeIgniter
Acabo de cambiar el contenido del archivo .htaccess y, como se muestra en los siguientes enlaces, respondo. Y traté de actualizar la página (que no funcionó y no pudo encontrar la solicitud a mi controlador) funcionó.
Luego, solo por mi duda, deshice los cambios que hice en mi .htaccess dentro de mi carpeta public_html de nuevo al contenido original .htaccess . Así que ahora es como sigue (que originalmente era):
DirectoryIndex index.php RewriteEngine on RewriteCond $1 !^(index\.php|images|css|js|robots\.txt|favicon\.ico) RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ ./index.php?/$1 [L,QSA]
Y ahora también funciona.
Sugerencia: parece que antes de que las reglas de reescritura no se hayan configurado claramente dentro del contexto del servidor.
Mi estructura de archivos es la siguiente:
Y en el
index.php
he configurado las siguientes rutas al sistema y la aplicación:$system_path = '../gheapp/system'; $application_folder = '../gheapp/application';
Nota: al hacerlo, el código fuente de nuestra aplicación se oculta al público al principio.
Por favor, si encuentran algo incorrecto en mi respuesta, comenten y corrijanme nuevamente.
Espero que los principiantes encuentren útil esta respuesta.
¡Gracias!
fuente
Mi sitio está alojado en MochaHost, tuve dificultades para configurar el archivo .htaccess para poder eliminar el index.php de mis URL. Sin embargo, después de buscar en Google, combiné la respuesta en este hilo y otras respuestas. Mi archivo .htaccess de trabajo final tiene el siguiente contenido:
<IfModule mod_rewrite.c> # Turn on URL rewriting RewriteEngine On # If your website begins from a folder e.g localhost/my_project then # you have to change it to: RewriteBase /my_project/ # If your site begins from the root e.g. example.local/ then # let it as it is RewriteBase / # Protect application and system files from being viewed when the index.php is missing RewriteCond $1 ^(application|system|private|logs) # Rewrite to index.php/access_denied/URL RewriteRule ^(.*)$ index.php/access_denied/$1 [PT,L] # Allow these directories and files to be displayed directly: RewriteCond $1 ^(index\.php|robots\.txt|favicon\.ico|public|app_upload|assets|css|js|images) # No rewriting RewriteRule ^(.*)$ - [PT,L] # Rewrite to index.php/URL RewriteRule ^(.*)$ index.php?/$1 [PT,L] </IfModule>
fuente