php修正url的办法:一、经过设置装备摆设文件修正URL规定;二、设置URL伪动态,即限度伪动态的后缀;三、正在设置装备摆设文件中开启路由支持,并设置装备摆设路由;四、将URL进行重写便可。
PHP对URL设置
1、URL规定
一、默许是区别巨细写的
二、假如咱们没有想区别巨细写能够改设置装备摆设文件
'URL_CASE_INSENSITIVE'=>true, //url没有区别巨细写
三、假如模块名为 UserGroupAction
那末url找模块就须要要写成
http://localhost/thinkphp4/index.php/user_group/index
四、假如'URL_CASE_INSENSITIVE'=>false
那末url也能够写为
http://localhost/thinkphp4/index.php/UserGroup/index
2、URL伪动态
'URL_HTML_SUFFIX'=>'html|shtml|xml',//限度伪动态的后缀
3、URL路由
一、启动路由
要正在设置装备摆设文件中开启路由支持
二、应用路由
1.规定表白式设置装备摆设路由
'my'=>'Index/index',//动态地点路由 ':id/:num'=>'Index/index',//静态地点路由 'year/:year/:month/:date'=>'Index/index',//静态以及动态夹杂地点路由 'year/:year\d/:month\d/:date\d'=>'Index/index',//静态以及动态夹杂地点路由
加之 \d代表类型只能是数字
'my/:id$'=>'Index/index',// 加之$阐明地点中只能是 my/1000 前面不克不及有其余内容了
2.正则表白式设置装备摆设路由
'/^year\/(\d{4})\/(\d{2})\/(\d{2})/'=>'Index/index?year=:1&month=:2&date=:3'
三、留意事项:
1.越复杂的路由越往后面放
'URL_ROUTE_RULES'=>array( 'my/:year/:month:/:day'=>'Index/day', 'my/:id\d'=>'Index/index', 'my/:name'=>'Index/index', )
2.能够应用$作为齐全婚配的路由规定
'URL_ROUTE_RULES'=>array( 'my/:id\d$'=>'Index/index', 'my/:name$'=>'Index/index', 'my/:year/:month:/:day$'=>'Index/day', ),
3.用正则婚配的形式
'URL_ROUTE_RULES'=>array( '/^my\/(\d+)$/'=>'Index/index?id=:1', '/^my\/(\w+)$/'=>'Index/index?name=:1', '/^my\/(\d{4})\/(\d{2})\/(\d{2})$/'=>'Index/day?year=:1&month=:2&day=:3', ),
四:URL重写
(1):将Apache---〉httpd.conf下的rewrite开启:
#LoadModule rewrite_module modules/mod_rewrite.so 将 # 去掉便可
(2):AllowOverride None 将None改成 All:即
<Directory "D:/wamp/cgi-bin"> AllowOverride None Options None Require all granted </Directory>
(3):确保URL_MODEL设置为2(不必修正)
(4):把上面的内容保留为.htaccess文件放到入口文件的同级目次下
<IfModule mod_rewrite.c> RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L] </IfModule>
而后重启Apache
以上就是php若何修正url的具体内容,更多请存眷资源魔其它相干文章!
标签: php URL php教程 php故障解决 php使用问题
抱歉,评论功能暂时关闭!