浏览模式: 普通 | 列表
5月, 2020 | 1 | 2 | >
p.s. centos下面一般用nginx,因为windows下使用php性能不佳,所以用apache测试下
MPM全称:Multi-Processing Module(多线程处理模块)
MPM处理的模式有很多种:prefork MPM、worker MPM、BeOS MPM、NetWare MPM、OS/2 MPM、WinNT MPM ,其中windows下面直接设置WinNT_MPM

类UNIX常用的模式有三种:prefork 、worker 、event ,可以用命令
apachectl -l
查看是否加载了MPM

WINDOWS下面用命令
httpd.ex -l
查看是否加载了MPM,一般默认就加载模块


httpd.conf 找到以下这行内容,去掉注释. (如果没有此段代码可以新加。没有此文件httpd-mpm.conf可以新建,也可以直接加代码到)
...

阅读全文…
p.s.具体实现过程中,反向代理和缓存涉及较多模块,另外虚拟主机的反向代理的中使用伪静态需要加[P]标记proxy,不然不会生效。我测试了下
放.htaccess中没用,不知道是不是AllowOverride 设置问题,所以直接放 httpd-vhosts.conf文件
RewriteEngine On
RewriteRule /news_(.*).html$ /news?classid=$1 [L,P]
RewriteRule /shop_(.*).html /shop?id=$1 [L,P]


使用apache代理及缓存的目的:
        将远程服务器(没有任何控制访问权限)上发布的服务,利用代理映射到本地服务器(可自由控制)。有效解决跨域问题。
        利用缓存可以有效解决远程服务器的部分GET请求,如图片,JS等静态文件响应慢的问题。
...

阅读全文…
p.s. 神器啊,查找数万文件进行改名,速度比较快。

我文件夹下有大量
/**/**/**.jpg343 想去掉最后的数字 /**/**/**.jpg
(.*)\.(jpg|gif|png)\d+ 替换为 \1.\2 即可瞬间完成,非常棒!!


正则表达式重命名工具(大批量文件重命名)是一款超级简洁到没朋友的计算机重命名软件。找了好些批量文件重命名的工具,功能都太复杂了,索性自己写一个正则表达式重命名工具,该工具可以批量修改批量文件名,消除了一个接一个的麻烦。 一种简单实用的文件批量重命名工具。将文件直接拖到列表中以更改名称,并在文件夹中获取指定类型的文件以进行更改,非常方便。

attachments/202005/25_210057_20130603_152644.png


下载:
点击下载
关于ossftp:https://help.aliyun.com/document_detail/32190.html?spm=5176.10695662.1996646101.searchclickresult.69a04017LCXEgB
curl连接ossftp说明如下:
用户名:AccessKeyID和Bucket名称,AccessKeyID/bucket_name;
密码:AccessKeySecret
端口就是2048
范例如下:
                $target_ftp_file = 'ftp://127.0.0.1:2048/filepath/'.$_FILES['upload']['name'];
                curl_setopt($curl, CURLOPT_URL, $target_ftp_file);
...

阅读全文…

php中isset,unset,reset区别和联系

[ 2020-05-16 14:55:51 | 作者: admin ]
1:isset - 确定如果一个变量被设置,不为NULL,isset只检查变量。

2:unset 取消设置(Unset a given variable)

3:reset() 函数把数组的内部指针指向第一个元素,并返回这个元素的值。
p.s.嗯。。看到这个smarty块函数插件的编译解释逻辑实在太绕了,也亏的作者能想出来。如果用原生php,几行代码的事,效率差距太大太大。

上次写过一篇关于smarty_block_name的疑惑,这次来说下它的实现原理,以便于理解这玩意怎么赋值和生效的

模板片段如下,定义一个自定义块 block
<block parent_id="6" ><li>{$item.title}</li></block>

然后在插件plugin中加上 smarty_block_block ,使用$GLOBALS[$index]定义一个全局变量来存储数组$items,入栈出栈$item
function smarty_block_block($params,   $content,   $template, &$repeat){
...
...

阅读全文…
用管理员身份打开cmd.exe,进到mysql的bin目录


D:\Program Files\mysql-5.7.13\bin>mysqld install
Service successfully installed.
D:\Program Files\mysql-5.7.13\bin>net start mysql
MySQL 服务正在启动 .
MySQL 服务无法启动。
服务没有报告任何错误。
请键入 NET HELPMSG 3534 以获得更多的帮助。

报错了,打开系统日志提示:
Fatal error: Can’t open and lock privilege tables: Table ‘mysql.user’ doesn’t existFor more information, see Help and Support Center at
...

阅读全文…
本文内容实属不理解块函数原理,详细分析还请看本人另外一篇blog,smarty_block_name解惑篇 http://blog.xg98.com/article.asp?id=2669

p.s.本人非常讨厌任何模板语法,能不用就不用。关于smarty的plugin扩展,官方文档惜字如金,实在看的不明不白 https://www.smarty.net/docs/zh_CN/plugins.block.functions.tpl
当block中涉及变量,如果直接赋予字符串没有问题,如果给予一个变量常常就不对头了。

结果正确:
   $smarty->assign("title", "这是标题");

结果错误:
$smarty->assign("title", $item[title]);

百度了很多文档是在$s...

阅读全文…
1 | 2 | >