• Linux 搭建PHP环境


    1. 安装 PHP The Yii2.0 (PHP >= 5.4.0),

    sudo add-apt-repository ppa:ondrej/php5
    sudo apt-get update

    2. 安装PHP extensions

    sudo apt-get install php5-cgi
    sudo apt-get install php5-fpm
    sudo apt-get install php5-curl
    sudo apt-get install php5-mcrypt
    sudo apt-get install php5-gd
    sudo apt-get install php5-dev

    或者

    sudo apt-get install php5-cgi php5-fpm php5-curl php5-mcrypt php5-gd php5-dev php5-mysql

    如果源不存在了

    sudo add-apt-repository ppa:ondrej/php
    sudo apt-get install php7.1-fpm php7.1-curl php7.1-mysql php7.1-common php7.1-cgi php7.1-mcrypt php7.1-gd php7.1-dev

    3. 配置环境
    打开: vi /etc/nginx/sites-available/default(vi安装sudo apt-get install vim)
    修改以下内容:两个位置,为以下内容

    index index.html index.htm index.php;

    ......


    location ~ .php$ {
    fastcgi_split_path_info ^(.+.php)(/.+)$;
    #fastcgi_pass 127.0.0.1:9000;
    fastcgi_pass unix:/var/run/php5-fpm.sock;

    #fastcgi_pass unix:/var/run/php7.1-fpm.sock;
    fastcgi_index index.php;
    include fastcgi_params;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    }

    4.重启
    /etc/init.d/php5-fpm {start|stop|quit|restart|reload|logrotate}  或者php7.1-fpm
    或者
    service php5-fpm {start|stop|quit|restart|reload|logrotate} 或者php7.1-fpm
    5. 安装Redis
    sudo apt-get install redis-server
     安装 PHP Redis extension
    sudo apt-get install php5-redis
    6. 安装 nginx
    sudo apt-get install nginx
    7. 配置 nginx
    在/etc/nginx/conf.d下建一个conf文件,例如test.conf
    假设自己的项目是/var/www/下的test,确认自己的项目$fcgi_server的与/etc/nginx/sites-available/default匹配

    server {

    set $project_root /var/www/test/src;
    set $docs_root /var/www/test/docs;
    set $fcgi_server unix:/var/run/php5-fpm.sock; ## listen for socket
    #set $fcgi_server 127.0.0.1:9000; ## listen for port

    charset utf-8;

    listen 80; ## listen for ipv4
    #listen [::]:80 default_server ipv6only=on;
    ## listen for ipv6

    server_name test.com *.test.com;
    root $project_root;

    access_log /var/log/nginx/test.com-access.log;
    error_log /var/log/nginx/test.com-error.log;

    location ^~ /docs/frontend {
    alias $docs_root/frontend/site/;
    index index.html;
    }

    location ^~ /docs/backend {
    alias $docs_root/backend/api/;
    index index.html;
    }

    location / {
    root $project_root/frontend/build;
    rewrite ^/?(.*) /index.html break;
    }

    location ~ /(scripts|styles|images|i18n)/{
    root $project_root/frontend/build;
    }

    location ^~ /partials {
    root $project_root/frontend/build;
    try_files $uri $uri/ /partials/empty.html;
    }

    location ^~ /bower/ {
    alias $project_root/frontend/bower/;
    }

    location /api {
    alias $project_root/backend/web/;

    rewrite ^(/api)/$ $1 permanent;
    try_files $uri /backend/web/index.php?$args;
    }

    location ^~ /api/(.+.(js|css|png|jpg|gif|swf|ico|pdf|mov|fla|zip|rar))$ {
    access_log off;
    expires 360d;

    rewrite ^/api/(.+)$ /backend/web/$1 break;
    rewrite ^/api/(.+)/(.+)$ /backend/web/$1/$2 break;
    try_files $uri =404;
    }

    location ~ .php$ {
    fastcgi_pass $fcgi_server;
    fastcgi_keep_conn on;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_index index.php;
    include fastcgi_params;
    }

    location ~ .(ht|svn|git) {
    deny all;
    }
    }


    8. 配置hosts
    vi /etc/hosts
    添加一条
    127.0.0.1 test.com
    9. 安装 composer
    curl -sS https://getcomposer.org/installer | php
    mv composer.phar /usr/local/bin/composer
    处理步骤(http://pkg.phpcomposer.com/)
    安装composer
    composer global require "fxp/composer-asset-plugin:1.0.0-beta4"
    用composer安装php后台需要的扩展
    cd /<DIR>/src/backend
    composer install
    10. SASS
    安装 ruby (version > 1.9.1)
    sudo apt-get install ruby
    执行 mirror for ruby(Ensure only ruby.taobao.org exists)

    gem sources --remove http://rubygems.org/
    gem sources -a https://ruby.taobao.org/
    gem sources -l
    *** CURRENT SOURCES ***
    https://ruby.taobao.org

    安装 sass
    gem install sass
    11. 安装指定版本nodejs

    curl -o ~/node.tar.gz https://nodejs.org/dist/v0.12.7/node-v0.12.7.tar.gz

    cd
    tar -zxvf node.tar.gz
    cd node-v0.12.7
    ./configure
    make
    sudo make install

    12. 指向源
    npm config set registry=http://registry.npm.taobao.org
    安装 gulp

    sudo npm install -g gulp

    安装 bower

    sudo npm install -g bower

    13. 安装前台需要的包

    cd /<DIR>/src/frontend
    (sudo)npm install
    bower install

    14. 安装 Mysql

    sudo apt-get install mysql-server mysql-client
    sudo apt-get install php5-mysql
    创建 database user: root password: root
    create database hopeland CHARACTER SET utf8;

    15.

    配置backend

    cd /<DIR>/src/backend/
    chmod 777 runtime
    chmod 777 temps
    创建默认 table
    ./yii migrate/up

    配置frontend
    cd /<DIR>/src/frontend/
    gulp


    16. Init Rbac

    ./yii migrate --migrationPath=@yii/rbac/migrations/
    Init rbac mechanism
    ./yii rbac/init
    Change user's auth role
    ./yii rbac/set-auth

    17. Config Resque with Supervisor
    安装 supervisor
    pip install supervisor
    或者
    easy_install supervisor
    添加test.conf in /etc/supervisor/conf.d folder

    [program:test_scheduler]
    process_name=%(program_name)s_%(process_num)02d
    directory=/var/www/test
    command=php /var/www/test/src/backend/yii resque/scheduler
    numprocs=1
    redirect_stderr=True
    autostart=True
    autorestart= True
    stdout_logfile=/var/log/supervisor/%(program_name)s-stdout.log
    stderr_logfile=/var/log/supervisor/%(program_name)s-stderr.log

    重启 supervisor
    ```sh
    sudo supervisorctl reload
    sudo supervisorctl restart all
    18. Init jobs
    ./yii job/init
    Start job
    ./yii job/start

    19. 访问test.com

  • 相关阅读:
    SQLite 的连接串
    输入数组长度大于此表中的列数
    MVC3.0入门学习笔记页面传值ViewData
    MVC3.0入门学习笔记页面传值TempData
    在控制台程序中显示进度
    WCF学习笔记(1) 一个简单的wcf实例
    webBrowser 操作无ID元素
    webBrowser 设置文本框
    cookie总结
    checkbox是否被选择
  • 原文地址:https://www.cnblogs.com/floraCnblogs/p/php-nginx.html
Copyright © 2020-2023  润新知