我对代码点火器相当陌生,我所有的链接都有这个路径“/文件夹/文件”。所以我希望当我调用链接时,它应该显示:
www.website.com/folder/file
但是当我点击它时,它会转到这个:
www.website.com/index.php/folder/file
我如何防止它发生?我也希望它是相对的。
我需要在配置中触摸一些东西吗?
我对代码点火器相当陌生,我所有的链接都有这个路径“/文件夹/文件”。所以我希望当我调用链接时,它应该显示:
www.website.com/folder/file
但是当我点击它时,它会转到这个:
www.website.com/index.php/folder/file
我如何防止它发生?我也希望它是相对的。
我需要在配置中触摸一些东西吗?
如果要从 url 中删除 index.php,只需按照以下步骤操作:
1) 与应用程序持有者并行创建 .htacess 文件,然后复制以下代码:
RewriteEngine On
RewriteBase /CodeIgniter/
RewriteCond %{REQUEST_URI} ^system.*
RewriteRule ^(.*)$ /index.php/$1 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
2) 在应用程序文件夹中的 config.php 中将 $config['index_page'] 更改为空白,如下所示:
$config['index_page'] = '';
3) 启用 apache 的“rewrite_module”。
如果您使用 IIS,您需要在根目录中创建一个名为 web.config 的文件并粘贴以下内容
<system.webServer>
<httpErrors errorMode="Detailed" />
<asp scriptErrorSentToBrowser="true"/>
<rewrite>
<rules>
<rule name="RuleRemoveIndex" 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" />
</conditions>
<action type="Rewrite" url="index.php/{R:1}" appendQueryString="true"/>
</rule>
</rules>
</rewrite>
</system.webServer>
<system.web>
<customErrors mode="Off"/>
<compilation debug="true"/>
</system.web>
检查这个
在 config.php 上
$config['index_page'] = 'index.php';
在.htaccess
Options +FollowSymLinks
RewriteEngine On
RewriteRule ^(.*)$ /index.php?/$1 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d