找回密码
 立即注册

tp5怎么去除index.php

tp5去除index.php的方法:1、使用“\think\Url::root(/);”;2、修改htaccess配置,代码如“ RewriteCond %{REQUEST_FILENAME}...”;3、修改nginx配置即可。

110624pnsf3tr3m3ss8nwl.jpg

环境:win10 + php7.1 + nginx1.2 + ThinkPHP5 + Dell G3电脑

tp5怎么去除index.php?

TP5 去除url中 index.php 方法

在使用 ThinkPHP5 过程中,用 url 函数生成链接地址时,地址中产生了 index.php

  例:我们要生成一个 /home/news/list.html 的地址,结果生成的地址是 /index.php/home/news/list.html

在手册中 URL 生成篇有介绍:

   110624w0xbezxs4449dcis.png

还可以写成:

1

\think\Url::root(/);

其它配置:

  .htaccess配置 (nginx 可忽略此文件)

1

2

3

4

5

6

7

<IfModule mod_rewrite.c>

  Options +FollowSymlinks -Multiviews

  RewriteEngine On

 

  RewriteCond %{REQUEST_FILENAME} !-d

  RewriteCond %{REQUEST_FILENAME} !-f

  RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]</IfModule>


  nginx配置

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

server{

    listen 80;#监听端口

    server_name www.demo.com;#域名

    index index.html index.htm;

    root D:/wnmp/demo/public;

    location / {

        index  index.html index.htm index.php;

        #autoindex  on;

              

        if (!-e $request_filename) {

            rewrite ^(.*)$ /index.php?s=/$1 last;

        }

    }

    location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|ico)$

    {

        expires 30d;

        # access_log off;

    }

    location ~ .*\.(js|css)?$

    {

        expires       max;

        log_not_found off;

        access_log    off;

    }

    error_page   500 502 503 504  /50x.html;

    location ~ \.php$ {

        fastcgi_pass   127.0.0.1:9000;

        fastcgi_index  index.php;

        #下面两句是给fastcgi权限,可以支持 ?s=/module/controller/action的url访问模式

        fastcgi_split_path_info  ^((?U).+\.php)(/?.+)$;

        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;

        #下面两句才能真正支持 index.php/index/index/index的pathinfo模式

        fastcgi_param  PATH_INFO  $fastcgi_path_info;

        fastcgi_param  PATH_TRANSLATED  $document_root$fastcgi_path_info;

        include        fastcgi_params;

    }

}


全部评论 0

tp5去除index.php的方法:1、使用“\think\Url::root(/);”;2、修改htaccess配置,代码如“ RewriteCond %{REQUEST_FILENAME}...”;3、修改nginx配置即可。

110624pnsf3tr3m3ss8nwl.jpg

环境:win10 + php7.1 + nginx1.2 + ThinkPHP5 + Dell G3电脑

tp5怎么去除index.php?

TP5 去除url中 index.php 方法

在使用 ThinkPHP5 过程中,用 url 函数生成链接地址时,地址中产生了 index.php

  例:我们要生成一个 /home/news/list.html 的地址,结果生成的地址是 /index.php/home/news/list.html

在手册中 URL 生成篇有介绍:

   110624w0xbezxs4449dcis.png

还可以写成:

1

\think\Url::root(/);

其它配置:

  .htaccess配置 (nginx 可忽略此文件)

1

2

3

4

5

6

7

<IfModule mod_rewrite.c>

  Options +FollowSymlinks -Multiviews

  RewriteEngine On

 

  RewriteCond %{REQUEST_FILENAME} !-d

  RewriteCond %{REQUEST_FILENAME} !-f

  RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]</IfModule>


  nginx配置

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

server{

    listen 80;#监听端口

    server_name www.demo.com;#域名

    index index.html index.htm;

    root D:/wnmp/demo/public;

    location / {

        index  index.html index.htm index.php;

        #autoindex  on;

              

        if (!-e $request_filename) {

            rewrite ^(.*)$ /index.php?s=/$1 last;

        }

    }

    location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|ico)$

    {

        expires 30d;

        # access_log off;

    }

    location ~ .*\.(js|css)?$

    {

        expires       max;

        log_not_found off;

        access_log    off;

    }

    error_page   500 502 503 504  /50x.html;

    location ~ \.php$ {

        fastcgi_pass   127.0.0.1:9000;

        fastcgi_index  index.php;

        #下面两句是给fastcgi权限,可以支持 ?s=/module/controller/action的url访问模式

        fastcgi_split_path_info  ^((?U).+\.php)(/?.+)$;

        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;

        #下面两句才能真正支持 index.php/index/index/index的pathinfo模式

        fastcgi_param  PATH_INFO  $fastcgi_path_info;

        fastcgi_param  PATH_TRANSLATED  $document_root$fastcgi_path_info;

        include        fastcgi_params;

    }

}


热门推荐
您需要登录后才可以回帖 立即登录
说说你的想法......
0
0
0
返回顶部