分类目录归档:PHP

nginx 设置限制ip访问

一、服务器全局限IP #vi nginx.conf allow 10.57.22.172; #允许的IP deny all; 二、站点限IP #vi vhosts.conf 站点全局限IP: location / { index index.html index.htm index.php; allow 10.57.22.172; deny all; location ~ \.php$ { if ( $fastcgi_script_name ~ \..*\/.*php ) {return 403;} fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param … 继续阅读

发表在 Linux, PHP | 标签为 , , | 留下评论

php生成图片文字混合图片

图片合成文字 <?php   $im = imagecreatetruecolor(400, 30); //创建400 30像素大小的画布   $white = imagecolorallocate($im, 255, 255, 255); $grey = imagecolorallocate($im, 128, 128, 128); $black = imagecolorallocate($im, 0, 0, 0);   imagefilledrectangle($im, 0, 0, 399, 29, $white); //输出一个使用白色填充的矩形作为背景   //如果有中文输出,需要将其转码,转换为UTF-8的字符串才可以直接传递 //$text = … 继续阅读

发表在 PHP | 标签为 , , | 2 条评论

nginx php-fpm 上传大图片出错

1.需要安装gd库 yum -y install gd 重启动fpm 2.nginx 默认图片上传最大限制比较小。 修改PHP.ini中post_max_size upload_max_filesize max_execution_time max_input_time   打开php.ini文件,修改完毕后重启服务器。测试下上传文件。。。。(嘻嘻,是不是传上了很大的文件?)   1、文件上传时存放文件的临时目录。必须是 PHP 进程所有者用户可写的目录。如果未指定则 PHP 使用系统默认值php.ini文件中upload_tmp_dir用来说明PHP上传的文件放置的临时目录。   要想上传文件,得保证服务器没有关闭临时文件和有对文件夹的写权限   2、max_execution_time   变量max_execution_time设置了在强制终止脚本前PHP等待脚本执行完毕的时间,此时间以秒计算。当脚本进入了一个无限循环状态 时此变量非常有用。然而,当存在一个需要很长时间完成的合法活动时(例如上传大型文件),这项功能也会导致操作失败。在这样的情况下必须考虑将此变量值增 加,以避免PHP在脚本正在执行某些重要过程的时候将脚本关闭。   修改为:max_execution_time =800   3、file_uploads = On(原来问开就不用设置了)   4、upload_max_filesize =2M修改为800M   5、同表单提交相关的一个变量是post_max_size,它将控制在采用POST方法进行一次表单提交中PHP所能够接收的最大数据量。似乎不大 可能需要将默认的8 MB改得更大。相反,应当适当将其降到更为实际的数值。但如果希望使用PHP文件上传功能,则需要将此值改为比upload_max_filesize还 要大。   也修改为:post_max_size =900M   6、max_input_time   此变量可以以秒为单位对通过POST、GET以及PUT方式接收数据时间进行限制。如果应用程序所运行环境处在低速链路上,则需要增加此值以适应接收数据所需的更多时间.   修改为:max_input_time =900 … 继续阅读

发表在 Linux, PHP | 标签为 , , , , | 留下评论

WordPress nginx 配置

WordPress是一个非常流行的Blog系统,它可以利用Apache的mod_rewrite来实现URL的静态化。安装好的WordPress在配置了持久链接之后,会在网站的根目录下(如果可写)生成一个.htaccess文件,这个文件可以指示Apache如何进行URL重写(如果服务器配置为允许使用htaccess的指令的话),它的内容如下: # BEGIN WordPress   RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L]   # END WordPress 这个文件的意思就是,如果当请求的文件不存在,那么把请求内部重定向到/index.php。WordPress会自己分析请求的URL,来判断显示哪个页面。 在上次配置了Nginx+PHP之后,由于Nginx不支持Apache的.htaccess文件,要实现持久连接静态化,我们必须手工配置Nginx的文件。首先找到Nginx的配置文件,默认编译后的配置文件在/usr/local/nginx/conf/nginx.conf;Ubuntu通过包安装的配置文件位于/etc/nginx/nginx.conf,也可以编辑vhost的配置文件,放在了/etc/nginx/sites-available下。 以下是基本的配置(Ubuntu下的范例): location / { index index.html index.php; if (-f $request_filename/index.html){ rewrite (.*) $1/index.html break; } … 继续阅读

发表在 Linux, PHP | 标签为 , | 4 条评论

WordPress 后台只有菜单,左侧空白

有时候在WordPress系统迁移后,或者在动了apache或php后,发现后台菜单都在,但是点击时,右侧窗体却不加载,内容为空白。而插件菜单都可以点击并且正常。惨状就像下面这张图这样: wordpress后台不加载 或许,你还能发现以下的报错信息: Fatal error: Access to undeclared static property: WP_Screen::$this in blog/wp-admin/includes/screen.php on line 706 而你很真的真的很确定自己没有动过WordPress的任何配置啊!这时要怎样修复呢?别当心,stackoverflow上有人遇到同样的问题。只要找到以下文件 /wp-admin/includes/screen.php 用你最喜欢的文本编辑器打开它,然后将 <?php echo self::$this->_help_sidebar; ?> (注意空格个数可能略有不同) 替换为 <?php echo $this->_help_sidebar; ?> 保存之后,看看是不是OK了?

发表在 PHP | 标签为 | 9 条评论

linux上安装ffmpeg

http://ffmpeg.org/download.html windows版本比较容易,可以去看看月小升之前的文章点这里 Linux 安装环境CentOS 下载tar.bz2安装包 tar -xvf XX.tar.bz2 yasm/nasm not found or too old. Use –disable-yasm for a crippled build. If you think configure made a mistake, make sure you are using the latest version from Git. If the latest … 继续阅读

发表在 Linux, PHP | 标签为 , , | 一条评论

512M VPS内存优化

512M的VPS优化apache内存 查看目前占用内存 Ps aux|grep httpd 基本一个占用50M左右 ps aux|grep httpd | wc –l 一共13个,减去grep httpd 那行 12个,说明占用大约600M 超过了服务器512M内存, (相比之下nginx主进程占用50M,带着php-fpm跑,一个fpm占用2M,开启10个fpm进程,一共70M的内存就足够了。) 标准Linux Apache配置在Apache的配置文件在/etc/httpd/conf/httpd.conf 但是lampp的不在httpd.conf里,而是在extra/http-default.conf里面。 两处地方分别对应两个模块prefork模块和worker模块(Apache默认启用的是prefork模块),根据自己的服务器启用的模块分别修改对应的参数,可以用命令httpd -l查看apache所使用的模块。 各参数含义解释如下: • StartServers //指定服务器启动时建立的子进程数量,prefork默认为5。如果你的内存占用过大,可适当减小此值。 • MinSpareServers //指定空闲子进程的最小数量,默认为5。如果当前空闲子进程数少于MinSpareServers ,那么Apache将以最大每秒一个的速度产生新的子进程。 • MaxSpareServers //设置空闲子进程的最大数量,默认为10。如果当前有超过MaxSpareServers数量的空闲子进程,那么父进程将杀死多余的子进程。如果你将该指令的值设置为比MinSpareServers小,Apache将会自动将其修改成”MinSpareServers+1″。 • MaxClients //限定同一时间客户端最大接入请求的数量(单个进程并发线程数),默认为256。任何超过MaxClients限制的请求都将进入等候队列,一旦一个链接被释放,队列中的请求将得到服务。要增大这个值,你必须同时增大ServerLimit 。 • ServerLimit … 继续阅读

发表在 Linux, PHP | 标签为 , , | 一条评论

thinkphp深入学习小笔记2

前期背景条件 项目根目录为 http://localhost/site/ 新建的模块叫home 我们在IndexController.php里有个add函数 public function add(){ //$this->show(‘<style type="text/css">*{ padding: 0; margin: 0; } div{ padding: 4px 48px;} body{ background: #fff; font-family: "微软雅黑"; color: #333;font-size:24px} h1{ font-size: 100px; font-weight: normal; margin-bottom: 12px; } p{ line-height: 1.8em; font-size: 36px }</style><div … 继续阅读

发表在 PHP | 标签为 , , | 2 条评论

解决session定时失效问题

<img id="phpImg" src="admin_session.php?" width="1" height="1" />   <script type="text/javascript"> function keepMeAlive(imgName){ myImg = document.getElementById(imgName); if(myImg) myImg.src = myImg.src.replace(/\?.*$/, ‘?’ + Math.random()); } window.setInterval("keepMeAlive(‘phpImg’);", 10000); </script> 10秒刷新一次session //window.setInterval(“keepMeAlive(‘phpImg’);”, 10000);

发表在 PHP | 标签为 | 一条评论

Thinkphp快速入门教程

简单普及一下MVC [模型层M,控制层C,视图层V] 视图 视图是用户看到并与之交互的界面。 模型 模型表示企业数据和业务规则。 控制器 控制器接受用户的输入并调用模型和视图去完成用户的需求 第一个小修改 Application\Home\Controller (Controller 字面理解我们也知道这个是控制层 MVC 的C) IndexController.class.php 修改$this->show();里的内容 还是这个文件 public function hello(){ echo ‘hello,thinkphp!’; } 访问 http://localhost/thinkphp/Home/Index/hello 就出现了hello…. 后置策略,就是在文件输出以后,继续执行。 前置对应的就是_before_hello() public function _after_hello(){ echo ‘after<br/>’; }   hello,thinkphp!after 新建业务模块 /thinkphp/目录下直接建立一个文件叫admin.php // 检测PHP环境 … 继续阅读

发表在 PHP | 标签为 | 2 条评论