主页/ 电商学院/网站开发/Thinkphp在各种服务器下的伪静态配置

Thinkphp在各种服务器下的伪静态配置

归类:网站开发
当一个Thinkphp网站做好要上线时,就需要先配置服务器,因为Thinkphp的网站一般需要支持伪静态,也有需要支持URL重写,就是可以自定义URL,这个有利于做百度等搜索引擎的收录。这里介绍几种比较常见的运行服务器,如IIS,apache和nginx这三种运行环境下的伪静态该如果配置。
首先是IIS服务器,这种服务器我们可以导入ISAPI_Rewrite伪静态文件,这样可以就可以让IIS支持伪静态,然后创建一个httpd.ini文件,放在根目录,将下面的代码

伪静态

代码内容如下图:
[ISAPI_Rewrite]
CacheClockRate 3600
RepeatLimit 32
RewriteRule /(?!Public)(?!include)(?!Uploads)(.*) /index.php\//$1 [L]
 
上面所提到的Public、include、Uploads是指放置一些静态的文件,如果图片或样式文件或JS文件等的文件夹。
 
 如果使用Apache运行环境的话,如果需要支持伪静态,则需要打开 rewriter_module模块,然后创建一个.htaccess文件放在根目录,然后这个文件的内容直接使用下面的代码:
rewrite
代码内容如下图所示:
<IfModule mod_rewrite.c>
 RewriteEngine on
 RewriteBase /
 RewriteCond %{REQUEST_FILENAME} !-d
 RewriteCond %{REQUEST_FILENAME} !-f
 RewriteRule ^(.*)$ index.php?s=/$1 [QSA,PT,L]
</IfModule>
这样一个Thinkphp网站在apache运行环境里就支持伪静态了。如果有英文版或其他的版本,直接把.htaccess文件放在英文版的根目录就可以了。
 
如果使用的是nginx的运行环境,一般情况下这种环境比较少用,所以对伪静态的配置不是很了解,但目前却用的越来越多了,如果使用宝塔面板的话,配置方法如下图所示:
url
只要选择Thinkphp,就会自动生成以下代码
location / {
if (!-e $request_filename){
rewrite  ^(.*)$  /index.php?s=$1  last;   break;
           
}
}
这样一个Thinkphp在nginx环境下就支持伪静态了,这里是一些比较简单的,如果在该网站里多增加一个英文版本呢?由于中英版本是独立开发的,也就是用了两套Thinkphp程序,所以英文版的伪静态设置如下图所示:
英文版
代码内容如下图:
location /en/ {
if (!-e $request_filename){
rewrite  ^/en/(.*)$  /index.php?s=$1  last;   break;
           
}
}
这样就可以支持英文版的伪静态了。
网站声明:以上文章内容为优加的原创文章,如需转载,请注明出处,谢谢合作!
0 喜欢
403 浏览数

优加商学院

APP开发微信小程序开发网站开发
您好,直接联系技术沟通需求
扫码添加我的微信,直谈需求
非工作时间技术回复慢请谅解
咨询更详细需求
提交信息后我们会第一时间与你取得联系,请大致把需求填写在"咨询内容"里。
姓名
手机
咨询内容
立即提交