`
wyk86485480
  • 浏览: 29269 次
  • 性别: Icon_minigender_1
  • 来自: 沈阳
文章分类
社区版块
存档分类
最新评论

PHP5.4+内置webserver,Yii中如何隐藏index.php,让URL rewrite

PHP 
阅读更多
Yii 中为了美化URL,可以把

/index.php?r=post/view&id=100

转变成下面path的形式:

/index.php/post/100

Yii的配置中加入:

```
<?php
        'urlManager'=>array(
            'urlFormat'=>'path',
//            'urlFormat'=>'get',
            'urlSuffix' => ".do",
            // Disable index.php
            'showScriptName' => false,
            // Disable r= routes
            'useStrictParsing' => true,
            // 'urlFormat'=> isset($_GET['sdkVersion']) && ($_GET['sdkVersion'] > '1.0.0') ? 'get' : 'path',
            'rules'=>array(
                '<controller:\w+>/<id:\d+>'=>'<controller>/view',
                '<controller:\w+>/<action:\w+>/<id:\d+>'=>'<controller>/<action>',
                '<controller:\w+>/<action:\w+>'=>'<controller>/<action>',
            ),
        ),
```

详细说明可参考官方文档: 
<http://www.yiiframework.com/doc-2.0/guide-runtime-routing.html>

美化后的路径仍然包含index.php,不够优雅,所以需要去掉,apache 和 nginx中都有rewrite的实现,网上很多,不再重复。

为了调试便捷,比如本人,基本不在开发机上部署apache、nginx这些。而是直接用PHP 5.4加入的内建Web Server,启动命令:

php -S 127.0.0.1:80

要隐藏index.php 这个,就需要用到 URL rewrite了,PHP内建webserver没这个功能,却也给我们提供了技巧,PHP官方参考: 
<http://php.net/manual/en/features.commandline.webserver.php>

比如我的Yii在appcall子目录中,所以在appcall下面创建 route.php,内容如下:

~~~
cat appcall/route.php
<?php
if (strpos($_SERVER['REQUEST_URI'], '/appcall/') === false) {
    return false;
} else {
    include __DIR__ . '/index.php';
}
~~~

注意启动命令后面要加上这个 route.php:

php -S 127.0.0.1:80 appcall/route.php

OK,这样就满足我们想要的了。

转自:http://www.yinqisen.cn/blog-694.html
分享到:
评论

相关推荐

    Yii2 RBAC 集成了用户管理模块和自写的权限管理模块,前端页面采用H+框架。-Yii2-Rbac.zip

    Yii2 是一个高性能的、基于组件的 PHP 框架,用于开发Web 2.0应用程序。在RBAC(Role-Based Access Control,基于角色的访问控制)方面,Yii2 提供了强大的支持,使得开发者可以方便地实现权限管理和用户授权。这个...

    yiren-p8Yii-v17323.apk

    yiren-p8Yii-v17323.apk

    Yii+2.0+培训大纲共39页.pdf.zip

    【Yii 2.0 培训大纲概览】 Yii 2.0 是一个高性能、组件化的 PHP 框架,适用于开发Web 2.0 应用程序。这个框架以其出色的性能、丰富的功能和易用性而备受赞誉。下面我们将深入探讨Yii 2.0 培训大纲的主要知识点,...

    Ajax-yii2-widgets.zip

    Ajax-yii2-widgets.zip,yii2框架的小部件集合,ajax代表异步javascript和xml。它是多种web技术的集合,包括html、css、json、xml和javascript。它用于创建动态网页,其中网页的小部分在不重新加载网页的情况下更改。

    yii2 url重写并隐藏index.php方法

    Yii2 框架在构建Web应用时,为了提供更美观和友好的URL,通常需要进行URL重写和隐藏`index.php`。这不仅可以提升用户体验,也有助于提高搜索引擎优化(SEO)。以下将详细介绍如何在Yii2中实现这一功能。 **一、URL...

    yii-1.1.4.r2429.zip_mvc php_php yii_yii 1.1.4.rar_yii mvc_yii1.1

    Yii 框架是 PHP 开发领域中的一款高效、开源的 Web 应用程序开发框架,专注于性能优化和开发效率提升。"yii-1.1.4.r2429.zip_mvc php_php yii_yii 1.1.4.rar_yii mvc_yii1.1" 这个标题提到了 Yii 框架的一个特定版本...

    Agile.Web.Application.Development.with.Yii1.1.and.PHP5

    《Agile.Web.Application.Development.with.Yii1.1.and.PHP5》这本书是关于敏捷Web应用开发的专业指南,特别关注了使用Yii 1.1框架和PHP 5编程语言进行开发的方法。Yii是一个高效的、开源的PHP框架,适用于构建大型...

    yii去掉url中的index.php

    去掉yii项目url访问中出现的index.php,有助于对网站的seo优化。

    PHP-Yii2中文手册.rar

    Yii2框架是基于组件、高性能的用于开发Web2.0应用的PHP框架。它强调代码的重用性和可扩展性,提供了丰富的特性,包括MVC(Model-View-Controller)、I18N(国际化)和L10N(本地化)、缓存策略、数据库抽象层、主动...

    Packtpub.Agile.Web.Application.Development.with.Yii1.1.and.PHP5.Aug.2010.rar

    《敏捷Web应用开发:Yii1.1与PHP5实战》是Packtpub出版社在2010年8月推出的一本技术专著,主要聚焦于使用Yii1.1框架和PHP5进行高效、灵活的Web应用程序开发。这本书深入浅出地讲解了如何利用Yii框架的强大功能,结合...

    PHP实例开发源码-Yii Framework php框架.zip

    PHP实例开发源码—Yii Framework php框架.zip PHP实例开发源码—Yii Framework php框架.zip PHP实例开发源码—Yii Framework php框架.zip

    基于PHP+Yii2+Mysql+Apache的图书管理系统.zip

    基于PHP、MySQL等技术构建的web系统,框架,PHP学习,课程设计作业,可用于毕业设计,源码项目,可直接运行,实测! 基于PHP、MySQL等技术构建的web系统,框架,PHP学习,课程设计作业,可用于毕业设计,源码项目,...

    yii2-master.rar

    Yii2是一款基于组件的高性能PHP框架,用于开发Web2.0应用。这个“yii2-master.rar”文件是一个归档,包含了Yii2框架的高级版本,可能经过了开发者的一些自定义和优化,使得它更适合用于复杂和高效的应用开发。在部署...

    Yii 1.1.17.467 php框架

    4. URL管理:Yii的URL管理器允许开发者创建用户友好的、SEO优化的URL。 5. 缓存支持:Yii内置了多种缓存策略,如文件缓存、内存缓存(如APC、Memcached或Redis),可提升应用性能。 6. 安全性:Yii提供了多种安全...

    yii-1.1.8.r3324

    Yii 是一个高性能、基于组件的 PHP 框架,用于开发 Web 2.0 应用程序。"yii-1.1.8.r3324" 版本是 Yii 框架的一个特定发行版,它在 1.1.x 系列中的一个稳定版本。这个版本号表示该框架在 1.1 主线版本基础上的第 3324...

    php_Yii Framework v2.0.4.zip.zip

    Yii Framework 是一个高性能的,基于组件的PHP框架,专为Web 2.0应用程序开发而设计。这个压缩包“php_Yii Framework v2.0.4.zip.zip”包含的是Yii框架的v2.0.4版本,这标志着该框架的一个稳定版本。在深入探讨其...

    yii2-basic.zip

    在本地开发环境中,可以使用 PHP 的内置服务器,命令行进入 "my_yii2/web" 目录后运行 `php yii serve`。在生产环境中,可能需要配置 Apache 或 Nginx 服务器来指向 "web" 目录。 对于进一步学习和使用 Yii2,建议...

Global site tag (gtag.js) - Google Analytics