不同WEB服务器下thinkphp的设置(全隐含路径)(一)

本文介绍了如何在IIS服务器中通过web.config文件配置URL重写功能,包括使用rewrite节点和ISAPI_Rewrite的方式实现对请求路径的重定向。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

WEB服务器目前常用的有。IIS,APACHE,NGINX。

小袁目前遇到的是IIS服务器下,隐含路径的问题。

那就先处理它:

一、IIS服务下的设置

一般情况下,在IIS7下,添加rewrite节点,我们这么配置:

WWWROOT下,web.Config文件:

 <rewrite>
    <rules>
    <rule name="OrgPage" stopProcessing="true">
    <match url="^(.*)$" />
    <conditions logicalGrouping="MatchAll">
    <add input="{HTTP_HOST}" pattern="^(.*)$" />
    <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
    <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
    </conditions>
    <action type="Rewrite" url="index.php/{R:1}" />
    </rule>
    </rules>
    </rewrite>

以上常见。此外,或者别的版本的IIS,我们可以这样

ISAPI_Rewrite如果能用,就在httpd.ini上作如下配置

RewriteRule (.*)$ /index.php?s=$1 [I]


以上配置,需要开启ISAPI_Rewrite拓展。

如果ISAPI_Rewrite 3模式,可以直接使用apache配置的.htaccess

其实,个人觉得,.htaccess还是比较原味的。

关于{R:1}等等这些,就是正则式了,不明白的,看一些。

ThinkPHP个开源的 PHP 框架,它简化了 PHP 开发者的开发流程。当你需要在 ThinkPHP 中处理用户上传 base64 编码的图片时,你可以按照以下步骤操作: 1. 首先,接收前端提交的 base64 图片数据。这通常发生在控制器(Controller)的方法中,例如 `uploadAction`: ```php public function uploadAction(Request $request) { $base64Data = $request->post('image_base64'); // 其他验证和处理 } ``` 2. 解码 base64 数据为二进制流: ```php $data = base64_decode($base64Data); ``` 3. 创建临时文件并保存解码后的图片: ```php $tempFile = tempnam(THINK_ROOT . 'public/upload', 'img_'); // 假设你有个公共文件夹 upload file_put_contents($tempFile, $data); ``` 4. 使用 ThinkPHP 的上传功能(如 `upload` 函数)将图片移动到服务器上指定的目录,并获取新的文件名或路径。这里假设你使用的是官方的上传配置: ```php $upload = new \Think\Upload(); $upload->isCheck(false); // 关闭验证,因为我们已经有了 base64 数据 $upload->savePath = '/path/to/your/upload/directory'; // 设置保存路径 $info = $upload->upload($tempFile); ``` 5. 如果上传成功,`$info` 将包含文件信息,包括新路径。你可以像这样获取路径: ```php $filePath = $info['savepath'] . '/' . $info['name']; ``` 6. 清理临时文件(如果需要): ```php unlink($tempFile); ``` 7. 返回上传路径给前端: ```php $response['url'] = $filePath; echo json_encode($response); ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值