小时刻

好记性,不如烂笔头


  • 首页

  • 归档

  • 标签

  • 搜索

php include实现多个sphinx.conf

发表于 2018-10-23   |   分类于 PHP   |   访问: 238 次   |   暂无评论

因为业务需要需要实现多个sphinx.conf
在网上看到一片博客说可以用php的include实现。
博客地址:https://blog.csdn.net/woshixiongjin/article/details/23773005

在sphinx.conf所在目录创建一个conf.d目录
将多个conf文件放到conf.d目录
然后sphinx.conf中的内容修改为如下:

#!/usr/bin/php
<?php
   $files = scandir(dirname(__FILE__) . "/conf.d/");
   foreach($files as $key => $file) 
   {
       if($file != "." && $file != ".." && preg_match('/.conf$/iU', $file) ) 
       {
           include(dirname(__FILE__) . "/conf.d/$file");
       }
   }

?>

php用swcs中文分词+sphinx实现全文检索

发表于 2018-10-20   |   分类于 PHP   |   访问: 544 次   |   暂无评论

Sphinx是什么:由俄罗斯人Andrew Aksyonoff开发的一个全文检索引擎。
Sphinx创建索引的速度:创建100万条记录的索引只需3~4分钟,创建1000万条记录的索引可以在50分钟内完成,而只包含最新10万条记录的增量索引,重建一次只需几十秒。
但是sphinx只支持英文全文检索,对中文不太铭感,于是就引入了swcs分词,其实也可以用Coreseek来建立中文索引,他的内核就是sphinx;
下面就简单说下sphinx+swcs的用法:
1.环境:
PHP 5.6+centos 6.5+mysql Ver 14.14 Distrib 5.1.73
2.安装Sphinx:【安装之前检查是否安装有gcc】

cd /usr/local/src
wget http://sphinxsearch.com/files/sphinx-2.3.1-beta.tar.gz
tar -zxf sphinx-2.3.1-beta.tar.gz 
cd sphinx-2.3.1-beta
./configure --prefix=/usr/local/sphinx --with-mysql=/usr/local/mysql
./configure --prefix=/usr/local/sphinx    --with-mysql-includes=/usr/include/mysql/  --with-mysql-libs=/usr/lib/mysql/
make && make install






阅读全文 »

PHP Mysql字符集utf8mb4支持Emoji表情

发表于 2018-08-02   |   分类于 PHP , Mysql   |   访问: 489 次   |   暂无评论

项目中评论或者文章中写入表情符号时,php报错,或者出来时一些???。这是为什么呢?

下面说一下mysql中的字符集:

mysql数据库表用的utf-8字符集也就是3字节,但emoji表情是4字节,导致无法insert.

怎么让mysql支持Emoij表情呢?

我们可以设置mysql的对应的表字符集为utf8mb4,排序规则改为utf8mb4_unicode_ci,记得修改之后重启mysql。

好了问题来了,我们修改完字符集后,进行测试。我想应该不会有问题,insert能写入了,
但是出来的数据是????,why?

项目开的时候数据库链接字符集默认是utf8,好了找到问题了,然后修改字符集为utf8mb4,O(∩_∩)O,
在进行测试,ok,完美解决了。

在vue中使用 layui框架中的form.render()无效解决办法

发表于 2018-05-23   |   分类于 jquery/javascript , html/css   |   访问: 783 次   |   暂无评论

近期开发的项目中前端ui框架用的是Layui,数据渲染使用vue去渲染,当我用vue渲染表单控件的数据时,
会出现控件被禁用的情况,例如:select下拉等,于是去看文档,按照文档说的写了,结果然并卵,( ̄▽ ̄)"。
搞了半天都没搞好。然后在百度搜索了vue的相关文档后菜解决了问题。
首先觉一个例子,如下面的一段代码:

var new Vue({
   el:"#app",
   data:{
     items:null
   },
   mounted:function () {
      this.details();
      // 这是layui的方法
      form.render();
   },
   methods:{
      details:function(){
        var _self = this;
        $.ajax获取数据成功后进行表单重载
        form.render();
      } 
   }
});



阅读全文 »

tp5 的nginx配置

发表于 2018-05-17   |   分类于 PHP , liunx   |   访问: 517 次   |   暂无评论

tp5项目在nginx中默认是不支持pathinfo的,那么我们怎么配置呢?

先看下面的问题,我们按照正常的流程配置好域名后,指向public目录,重启nginx,访问时候路径报错,出现500。

解决办法:

在fastcgi.conf文件里面我们会看到如下:

fastcgi_param PHP_ADMIN_VALUE "open_basedir=$document_root/:/tmp/:/proc/";

我们只需要修改open_basedir的路劲就可以,修改如下:

fastcgi_param PHP_ADMIN_VALUE "open_basedir=$document_root/../:/tmp/:/proc/";

然后查看项目public文件夹下的.user.ini文件:
修改为:

open_basedir=/home/wwwroot/kilts/public:/tmp/:/proc/

然后称其nginx,再打开项目就可以正常运行。

123456789
小时刻

小时刻

好好学习,天天向上

44 文章
8 分类
54 标签
RSS
GitHub 知乎 V2EX SF
友情链接
Hanny's Blog微萌的博客辉哥的博客宇润的博客Laruence的博客labike
© 2021 小时刻
Typecho
主题 - NexT.Pisces