【问题标题】:How to redirect old url of php to new ur of codeigniter using .htaccess file?如何使用 .htaccess 文件将 php 的旧 url 重定向到 codeigniter 的新 url?
【发布时间】:2017-09-25 05:46:15
【问题描述】:

我的旧网址喜欢

http://www.mywebsite.in/abc.php

我的新网址如

http://www.mywebsite.in/abc

这是我的 .htaccess 文件

RewriteEngine on
RewriteCond $1 !^(index\.php|resources|robots\.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L,QSA]

我已经将我的核心 php 项目转换为 codeigniter,并在我的 config.php 文件中进行了配置,我已经设置了我的基本 url 并从 url 中删除了 index.php,还通过 route.php 文件设置了所有 url。现在,我想用 codeigniter 的新 url 重定向我的核心 php 的旧 url。那么,我该怎么做呢?请帮帮我。

谢谢

【问题讨论】:

  • 可以请任何人帮助我
  • 你面临什么错误是重定向还是不重定向?以及您使用哪个服务器?
  • 当我在谷歌上搜索我的网站时,它会显示,当我点击特定链接时,它会显示带有 404 错误的旧网址,这是因为我已将我的核心 php 项目转换为 codeigniter。
  • 如果你的服务器是 GoDaddy RewriteRule ^(.*)$ index.php?/$1 [L,QSA] 它应该可以工作

标签: php apache .htaccess codeigniter redirect


【解决方案1】:

将此添加到您的 htaccess

RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule !.*\.php$ %{REQUEST_FILENAME}.php [QSA,L]

【讨论】:

    【解决方案2】:

    你可以使用:

    # To externally redirect without .php
    RewriteCond %{THE_REQUEST} \s/+(.+)\.php[\s?] [NC]
    RewriteRule ^ /%1 [R=301,L,NE]
    
    # To internally rewrite to .php
    RewriteCond %{REQUEST_FILENAME}.php -f
    RewriteRule ^ %{REQUEST_URI}.php [L]
    

    【讨论】:

      猜你喜欢
      • 2015-09-14
      • 2017-09-25
      • 1970-01-01
      • 2022-06-11
      • 2012-11-01
      • 2017-08-17
      • 1970-01-01
      • 1970-01-01
      • 2013-05-11
      相关资源
      最近更新 更多