700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > url重写 – php 伪静态不借助.htaccess怎么做

url重写 – php 伪静态不借助.htaccess怎么做

时间:2023-03-24 09:12:25

相关推荐

url重写 – php 伪静态不借助.htaccess怎么做

后端开发|php教程

php,伪静态,url重写

后端开发-php教程

如题所述,php 伪静态不借助.htaccess怎么做,就是纯php能写吗

阅读文章领红包源码,ubuntu镜像版本选择,爬虫爬取博客,书画 源码 php,seo产品排名lzw

资源付费下载平台源码,ubuntu下载微云文件,python爬虫多次定时,php netstat,海狸seo好吗lzw

回复内容:

企业网站商城源码下载,ubuntu系统的源,反爬虫ast原理,php的feof,格力公司seolzw

如题所述,php 伪静态不借助.htaccess怎么做,就是纯php能写吗

PHP只能处理PHP请求,像/post/1024这样的请求,如果Apache或者Nginx不通过重写rewrite把URI信息传给指定的PHP文件,那么PHP就不可能通过$_SERVER[‘REQUEST_URI’]取到这个信息。如果你用的是PHP内置的CLI HTTP Server,倒是可以进行路由,在启动时指定路由文件,比如index.php:

/rfc/builtinwebserver

php -S 127.0.0.1:8080 -t /www /www/index.php

<?php$url = parse_url($_SERVER[REQUEST_URI]);$uri = $url[path];if (file_exists(dirname(__FILE__).$uri)) { return false; //如果请求的文件或目录存在,直接返回} else { print_r($url); //分析URI,进行路由}

上面这段PHP代码跟下面常用的采用index.php作为前端控制器(路由)的框架重写规则含义相近:

# ApacheRewriteEngine OnRewriteBase /RewriteCond %{REQUEST_FILENAME} !-fRewriteCond %{REQUEST_FILENAME} !-dRewriteRule . /index.php [QSA,L]# Nginxlocation / { try_files $uri $uri/ /index.php?$args;}

你可以在每个需要重写的目录里面新建一个index.php.处理内容进行转发。

比如 要转发的地址 http://xxx.xxx.xxx/dirA/dirC/

在dirA中写一个index.php,手动转发给目的地。

PHP很多框架都有路由功能,会把url按照”/”拆分,解析出控制器、方法、参数,然后框架的控制程序就会调用对应的控制器的相应方法,并把参数传递过去。 当然参数多的时候只保持控制器和方法以目录分隔,其他参数还是能够以查询字符串的形式传递过去的。 可以看下CI框架的Router类。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。