php
centos7下yum安装PHP 7.4, 7.3 & 7.2 & 7.1
星期二, 三月 9th, 2021 | linux, php | 没有评论
centos7下yum安装PHP 7.4, 7.3 & 7.2 & 7.1
1.系统为centos7.9
2.使用yum安装 命令如下:
sudo yum install epel-release sudo rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm |
2.1:安装php版本
## Install PHP 7.4 yum --enablerepo=remi-php74 install php ## Install PHP 7.3 yum --enablerepo=remi-php73 install php ## Install PHP 7.2 yum --enablerepo=remi-php72 install php ## Install PHP 7.1 yum --enablerepo=remi-php71 install php |
2.2 安装php相关常用扩展(Modules)
### For PHP 7.4 yum --enablerepo=remi-php74 install php-xml php-soap php-xmlrpc php-mbstring php-json php-gd php-mcrypt ### For PHP 7.3 yum --enablerepo=remi-php73 install php-xml php-soap php-xmlrpc php-mbstring php-json php-gd php-mcrypt ### For PHP 7.2 yum --enablerepo=remi-php72 install php-xml php-soap php-xmlrpc php-mbstring php-json php-gd php-mcrypt ### For PHP 7.1 yum --enablerepo=remi-php71 install php-xml php-soap php-xmlrpc php-mbstring php-json php-gd php-mcrypt |
2.3 支持mysql及php-fpm
## For PHP 7.4 yum --enablerepo=remi-php74 install php-fpm mysqlnd ## For PHP 7.3 yum --enablerepo=remi-php73 install php-fpm mysqlnd ## For PHP 7.2 yum --enablerepo=remi-php72 install php-fpm mysqlnd ## For PHP 7.1 yum --enablerepo=remi-php71 install php-fpm mysqlnd |
2.4 查看更多可安装的模块
wordpress评论自定义验证码
星期日, 九月 13th, 2020 | php, wordpress | 没有评论
人总是难以改变的动物,一直用wordpress习惯了,不想再折腾静态博客网站了,继续跟随升级到5.5.1版本.
现在wordpress的评论的机器人真是做的好智能,一些常用的评论插件也基本上已经被攻破.
为了防止垃圾评论的骚扰,发现自制的验证码能拒绝这些评论机器人.
看样还是个性化的参数没有多大价值去处理的原因,非技术问题.
如下自制验证码:
管理员帐号登录:
修改下面的几个文件即可:
1.修改主题文件:(评论)comments.php
在下面新增一行即可,验证码的名称(authcode) 随便起个即可
<div id="commentform"> <form action="<?php echo get_option('siteurl'); ?>/wp-comments-post.php" method="post" id="commentform"> |
新增的行:
<label for="authcode">验证码: (Lee)</label> <input type="text" name="authcode" id="authcode" class="text" value="" placeholder="请输入Lee" size="10" tabindex="1" /> |
2.登录到机器上 修改 wp-comments-post.php 文件 添加下面的代码即可
if($_POST['authcode']!='Lee'){ echo "<script>alert('验证码错误')</script>"; echo "<script>window.history.go(-1)</script>"; exit; } |
小记:其实可以写成一个更好的,做个写个函数注入到其中更好.懒的写了.
PHP7.2 下mcrypt_module_open() 无法使用的解决方法
星期五, 二月 28th, 2020 | php | 没有评论
php版本升级到7.2后,其他看下来没有什么问题,在小程序的授权上,出现了错误,无法找到mcrypt_module_open的函数.
查询网上方法修复之.
主要是使用 openssl_decrypt来替换解决,解密协议为AES-128-CBC,
如果无法解析可以尝试AES-256-CBC,本人使用AES-128-CBC正常解析的
微信那边解密错误会返回错误码-41003,则解析错误.
1.修改文件wxBizDataCrypt.php
› Continue reading
centos7下的php-fpm的优化
星期四, 十月 3rd, 2019 | linux, php | 没有评论
云主机只有1C1G的内存,既要运行wordpress还要运行一个java程序及mysql,内存实在吃紧,运行1天发现mysql内存不足被杀掉,随优化之。
1.优化mysql参数
[myisamchk]
key_buffer_size = 8M
sort_buffer_size = 8M
read_buffer = 4M
write_buffer = 4M
详情可以参考 https://www.pomelolee.com/1304.html
2.php-fpm优化,减少php-fpm的数量
配置文件地址:/etc/opt/remi/php70/php-fpm.conf
实际修改配置文件:/etc/opt/remi/php70/php-fpm.d/www.conf
systemctl stop php70-php-fpm.service
pm = dynamic
pm.start_servers = 2
pm.min_spare_servers = 2
pm.max_spare_servers = 5
systemctl restart php70-php-fpm.service
让PHP7兼容老版本的php5.5.x或者5.6下的mysql_connect的处理代码
星期一, 九月 9th, 2019 | linux, php | 没有评论
1.昨天折腾了下服务器,把系统从centos6.5更新到7.6,也把对应的php版本升级到了php7.0.x系列
2.好多年没有再怎么写php代码了,以前写的也是在php5.5.x的版本写的,升级后发现程序无法使用,郁闷ing
3.跟踪下 /var/opt/remi/php70/log/php-fpm 下的 www-error.log发现是 php7已经不支持mysql_connect
4.网上找了下兼容的代码新增了 mysql_num_rows的函数的处理,我以前的老代码又可以欢快的跑起来了,记录下,也方便需要的朋友
$dbhost = DATA_HOST; $dbport = 3306; $dbuser = DATA_USERNAME; $dbpass = DATA_PASSWORD; $dbname = DATA_NAME; if(!function_exists('mysql_connect')){ function mysql_connect($dbhost, $dbuser, $dbpass){ global $dbport; global $dbname; global $mysqli; $mysqli = mysqli_connect("$dbhost:$dbport", $dbuser, $dbpass, $dbname); return $mysqli; } function mysql_select_db($dbname){ global $mysqli; return mysqli_select_db($mysqli,$dbname); } function mysql_fetch_array($result){ return mysqli_fetch_array($result); } function mysql_fetch_assoc($result){ return mysqli_fetch_assoc($result); } function mysql_fetch_row($result){ return mysqli_fetch_row($result); } function mysql_query($query){ global $mysqli; return mysqli_query($mysqli,$query); } function mysql_escape_string($data){ global $mysqli; return mysqli_real_escape_string($mysqli, $data); } function mysql_real_escape_string($data){ return mysql_real_escape_string($data); } function mysql_close(){ global $mysqli; return mysqli_close($mysqli); } function mysql_num_rows($result){ return mysqli_num_rows($result); } } |
php-fpm的php参数的配置和启动
星期二, 九月 4th, 2018 | php | 没有评论
0.启动:(基于php5.5.20)
/usr/local/webserver/php/sbin/php-fpm -D |
1.配置文件路径
/usr/local/webserver/php/etc
重要的配置文件:
php.ini 及php-fpm.conf
2.说明如下:php.ini
######避免PHP信息暴露在http头中 expose_php = Off ######避免暴露php调用mysql的错误信息 display_errors = Off ######在关闭display_errors后开启PHP错误日志(路径在php-fpm.conf中配置) log_errors = On ######设置PHP的扩展库路径 extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20141001/" ######设置PHP的opcache和mysql动态库 zend_extension=opcache.so extension=mysqli.so extension=pdo_mysql.so ######设置PHP的时区 date.timezone = PRC ######开启opcache [opcache] ; Determines if Zend OPCache is enabled opcache.enable=1 ######设置PHP脚本允许访问的目录(需要根据实际情况配置) ;open_basedir = /data/nginx/html; |
3. 配置php-fpm.conf 保持
使用Sublime Text3做PHP开发配置
星期四, 二月 9th, 2017 | php | 没有评论
HP开发时,笔者用过EditPlus3、Nodpad++、Vi、Vim和Netbeans,尝试过PhpStorm、PHP IDE、Atom,但即轻巧又强大的,首推Sublime Text了。
Sublime有一些技巧,用熟了是神器,不熟就是砖头。
以下我们讲讲在PHP开发中常用的Sublime技巧。
1 下载安装
官网:http://www.sublimetext.com/。
下载最新版本,然后按提示安装。
Sublime Text 3的脚本语言开发的常用插件
星期四, 二月 9th, 2017 | php | 没有评论
轻量级的Sublime Text 3的做开发做php,js,html,css等开发的常用插件收集
1.Package Control (https://sublime.wbond.net)
安装Package Control
Package Control是Sublime基础的、必备的包管理,以后所有插件都是通过它来安装的。
打开Sublime,点击菜单 View > Show Console(快捷键 Ctrl+`)打开命令控制台,输入下面的内容:
import urllib.request,os,hashlib; h = '2915d1851351e5ee549c20394736b442' + '8bc59f460fa1548d1514676163dafc88'; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) ); by = urllib.request.urlopen( 'http://packagecontrol.io/' + pf.replace(' ', '%20')).read(); dh = hashlib.sha256(by).hexdigest(); print('Error validating download (got %s instead of %s), please try manual install' % (dh, h)) if dh != h else open(os.path.join( ipp, pf), 'wb' ).write(by) |
然后回车,等待一会就可以安装完成了。
更多指导:https://sublime.wbond.net/installation
2.SublimeCodeIntel (https://github.com/SublimeCodeIntel/SublimeCodeIntel)
提供代码提示,函数、对象或变量名称等。还可以提示对象或类中哪些方法和变量。基于komodo codeintel开发,虽然有时会有一些问题,但是大多时候是没问题的。
› Continue reading
nginx和php隐藏版本号信息
星期四, 十二月 29th, 2016 | php | 没有评论
nginx 隐藏版本号 配置nginx.cnf server_tokens off; 即可
1 2 3 4 | http { # ...省略一些配置 server_tokens off; } |
2.php 的版本信息 会在 HTTP头,以类似X-Powered-By: PHP/7.0.14 这种形式
在php.ini 中关闭 expose_php = Off 即可
1 2 3 4 5 6 7 8 9 10 | ;;;;;;;;;;;;;;;;; ; Miscellaneous ; ;;;;;;;;;;;;;;;;; ; Decides whether PHP may expose the fact that it is installed on the server ; (e.g. by adding its signature to the Web server header). It is no security ; threat in any way, but it makes it possible to determine whether you use PHP ; on your server or not. ; http://php.net/expose-php expose_php = On |
对应改为记得重启下php 和对应的nginx
解决ThinkPHP路由404问题的 nginx 配置文件
星期一, 十一月 21st, 2016 | php | 没有评论
完美支持ThinkPHP的四种url模式, 静态文件不会再跑一次fastcgi浪费资源
ThinkPHP的几种url模式,如果nginx 不做任何配置,代理到php都是返回404错误,要解决也很简单
做好nginx的配置 做到动静分离和路由重写即可,配置如下:
其他日志配置等就不再贴出
› Continue reading
Search
相关文章
热门文章
最新文章
文章分类
- ajax (10)
- algorithm-learn (3)
- Android (6)
- as (3)
- computer (85)
- Database (30)
- disucz (4)
- enterprise (1)
- erlang (2)
- flash (5)
- golang (3)
- html5 (18)
- ios (4)
- JAVA-and-J2EE (186)
- linux (143)
- mac (10)
- movie-music (11)
- pagemaker (36)
- php (50)
- spring-boot (2)
- Synology群晖 (2)
- Uncategorized (6)
- unity (1)
- webgame (15)
- wordpress (33)
- work-other (2)
- 低代码 (1)
- 体味生活 (40)
- 前端 (21)
- 大数据 (8)
- 游戏开发 (9)
- 爱上海 (19)
- 读书 (4)
- 软件 (3)