Cómo eliminar index.php en codeigniter en Windows Azure e IIS?Cómo volver a escribir el index.php de Codeigniter en Windows Azure
¿Puedo volver a escribir la URL para el index.php de Codeigniter sin un módulo en particular?
Cómo eliminar index.php en codeigniter en Windows Azure e IIS?Cómo volver a escribir el index.php de Codeigniter en Windows Azure
¿Puedo volver a escribir la URL para el index.php de Codeigniter sin un módulo en particular?
Puede agregar reglas de reescritura en su archivo web.config. Agregue lo siguiente a la sección system.webServer
:
<rewrite>
<rules>
<rule name="Rule" stopProcessing="true">
<match url="^(.*)$" ignoreCase="false" />
<conditions>
<add input="{REQUEST_FILENAME}" matchType="IsFile" ignoreCase="false" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" ignoreCase="false" negate="true" />
<add input="{URL}" pattern="^/favicon.ico$" ignoreCase="false" negate="true" />
</conditions>
<action type="Rewrite" url="index.php/{R:1}" appendQueryString="true" />
</rule>
</rules>
</rewrite>
crear un nombre de archivo web.config en wwwroot
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="Imported Rule 1" stopProcessing="true">
<match url="^(.*)$" ignoreCase="false" />
<conditions logicalGrouping="MatchAll">
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
</conditions>
<action type="Rewrite" url="index.php?url={R:1}" appendQueryString="true" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
También puede aplicar otras reglas de reescritura como
<rule name="a rule">
<match url="^xxx/(.*)/(.*)-(.*)\.xxx" />
<conditions logicalGrouping="MatchAll" trackAllCaptures="false" />
<action type="Rewrite" url="controller/method/{R:3}" />
</rule>
con una condición, es cambiar $ config ['url_protocal'] = 'PATH_INFO'; en config/config.php esto le dirá al módulo de reescritura de URL que use el URI reescrito en lugar de la URL original, de lo contrario, usted no tendrá un problema con la página 404 no encontrada.
Gracias, funciona a la perfección :) – Rbeuque74
Esta configuración debería funcionar en la mayoría de los marcos php (zend 1/2, laravel, etc.) –
Esto no funcionaba para mí y entonces me di cuenta de que moví la referencia a mi index.php archivo dentro de una carpeta de la aplicación (para Codeigniter) así que quizás una buena cosa para recordar es que este archivo debe estar donde el archivo index.php es para usted. – Dusan