nginx thinkphp

2017年4月12日 0 条评论 1.46k 次阅读 0 人点赞

因为之前是在 centos6.5 mini版的系统下使用yum安装各种软件,所以在用thinkphp的时候出现各种问题,查错误日志也没查出来,后台启用apache,可以看到报错了,发现有很多php的扩展插件没有装,比如初次报错的就是 pdo,

索性一次把所有的都yum安装了

yum -y install php-cli php-pdo php-mysql php-mcrypt php-mbstring php-gd php-tidy php-xml php-xmlrpc php-pear php-pecl-memcache php-eaccelerator
#nginx mysql-server  php-fpm 

然后就可以用了,部分页面出现没有权限,查看了一下发现因为php-fpm是和php一起安装的,而且也顺带安装了apache,所以因为权限组也是用的是apache,而nginx用的是nginx,所以出现这个问题,把php-fpm的用户和用户组改成nginx就可以了

vim /etc/php-fpm.d/www.conf
user nginx
group nginx

在nginx的配置文件用,启用对thinkphp伪静态的支持:

set root /usr/share/nginx/html;
location / {
        root   $root;
        index  index.php index.html index.htm;
        if ( !-e $request_filename) {
          rewrite ^/index.php(.*)$ /index.php?s=$1 last;
          rewrite ^(.*)$ /index.php?s=$1 last;
          break;
        }
    }
location ~ \.php$ {
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;

        fastcgi_split_path_info ^((?U).+.php)(/?.+)$;
        fastcgi_param PATH_INFO $fastcgi_path_info;
        fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
        fastcgi_param    SCRIPT_FILENAME    $root$fastcgi_script_name;
        include        fastcgi_params;
    }

 在thinkphp的config.php文件中开启重写规则:

'URL_MODEL' => 2

Sevenfal

这个人太懒什么东西都没留下

文章评论(0)