zoukankan      html  css  js  c++  java
  • 宝塔面板部署thinkphp项目时ngix和apach服务器pathinfo的设置

    一 前言

            宝塔面板无论是对于linux系统还是windows系统,都提供了一键式的部署方案,操作简单,不需要复杂的编程基本功,小白可以完成专业复杂的后端部署。  对于宝塔提供的thinkphp5框架而言,更是大大提高开发效率。今天,针对浏览器访问地址中经常用到的url的pathinfo设置,进行分析总结。

    二 pathinfo的概念

         pathinfo是thinkphp框架为了url的简化和直观,设定的一种url形式。 

        今天以最简单的控制品来说明。 

        举个例如子

       

       http://tp5.com/index/index/index2

      域名为http://tp.com   访问模块为index  控制器为index  方法为index2

      tp5中的方法如下:

     

    index2方法可以带参数,那么加一个参数看下效果

    http://tp5.com/index/index/index2/a/我要给变量a传一个参数

    看到这里,tp5的url传参是直接在方法名后/变量/变量值  

    这就是pathinfo!!!

    那么,抛开tp5的pathinfo,tp3与传统兼容模式,对是复杂的url传参,非常不友好,也不利于seo.

    今天要说的重点不是tp5的操作,而是宝塔面板在部署时,遇到的path设置问题。

    三  ngix服务器pathinfo

         宝塔服务器自带的一键部署tp5的pathinfo正常,ngix版本为1.8.

         但是如果从tp5官网下载的框架拷贝到宝塔网站中,path失效,经对比发现问题所在,点开网站设置,修改如下即可:

        

       

       把网站伪静态,写入如下规则即可,

    location / {
    if (!-e $request_filename){
    rewrite ^(.*)$ /index.php?s=$1 last; break;
    }
    }

    意为隐匿index.php文件将?s=这种形式变量传参形式重定向到index.php.

    四 apach服务器的pathinfo

       宝塔自带apach版本为2.4, 在tp5框架中,专门有一个文件是写给apach读取的,叫.htaccess文件 ,  目录在public文件夹下

       

    <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>

    打开.htaccess.,如上修改,打开重定向即可。注意隐藏index.php时,有时apach默认少了?号,加上?号,pathinfo一切正常。

    五  本机测试

         宝塔所有建站方式为域名+端口。如果想在window系统本地编辑测试,在购买域名之后,需要将域名绑定到本机。打开如下目录下的hosts文件

        

      

    127.0.0.1 tp.com

    表示当本机访问tp.com域名时,访问本机

    五 总结

        关于pathinfo,网上和论坛里,人者见仁,智者见智。实际工作中,用宝塔面板来配置服务器和网站,操作相对简单,易于理解。总结起来其实就两点,分别修改网站下的配置即可。

       ngix  修改伪静态 

       apach 修改.htaccess文件

        

         

  • 相关阅读:
    MySQL 序列使用
    04_使用httpclient提交参数_get提交参数
    03_使用httpurlconnection提交参数_get中文参数解决&post提交
    01_今日内容
    00_消息机制回顾
    20_内容回顾
    19_MySmartImageView添加展示默认图的功能
    18_MySmartImageView实现
    17_自定义View对象构造说明
    16_新闻客户端_展示图片内容完成
  • 原文地址:https://www.cnblogs.com/fangziffff123/p/7588782.html
Copyright © 2011-2022 走看看