zoukankan      html  css  js  c++  java
  • laravel项目部署在linux上

    前置条件

    增加mcrypt

    先运行:find / -name mcrypt   找到mcrypt的路径(一般在你的php安装包里面的ext里面)。

    [root@fredfred879 htdocs]# find / -name mcrypt
    /root/soft/php-5.6.30/ext/mcrypt

    然后进入这个目录(下面是进入目录的命令,你要写你自己的目录路径)

    [root@fredfred879 htdocs]# cd /root/soft/php-5.6.30/ext/mcrypt
    [root@fredfred879 mcrypt]# ls
    config.m4  config.w32  CREDITS  mcrypt.c  mcrypt.dsp  mcrypt_filter.c  php_mcrypt_filter.h  php_mcrypt.h  tests  TODO

    然后运行:/usr/local/php5/bin/phpize   这是一个可执行的文本文件,要确保它在系统中会发现当前目录下多了一些configure文件。

    [root@fredfred879 mcrypt]# /usr/local/php5/bin/phpize
    Configuring for:
    PHP Api Version:         20131106
    Zend Module Api No:      20131226
    Zend Extension Api No:   220131226
    [root@fredfred879 mcrypt]#
    运行完,显示的结果应该就是上面的那三行,如果多了几行那就是有错误。原因应该是有些东西没安装。解决方式在我其他的博客中,你可以在我其他的博客中找一下。(如果我写了的话)。

    然后运行:[root@fredfred879 mcrypt]# ./configure --with-php-config=/usr/local/php5/bin/php-config

    然后运行:[root@fredfred879 mcrypt]# make && make install
    然后在运行:[root@fredfred879 mcrypt]# vi /usr/local/php5/etc/php.ini  进入配置文件添加extension="/usr/local/php5/lib/php/extensions/no-debug-zts-20131226/mcrypt.so"(要根据你自己的路径决定)

    ;extension=php_gmp.dll
    ;extension=php_intl.dll
    ;extension=php_imap.dll
    ;extension=php_interbase.dll
    ;extension=php_ldap.dll
    ;extension=php_mbstring.dll
    ;extension=php_exif.dll      ; Must be after mbstring as it depends on it
    ;extension=php_mysql.dll
    ;extension=php_mysqli.dll
    ;extension=php_oci8_12c.dll  ; Use with Oracle Database 12c Instant Client
    ;extension=php_openssl.dll
    ;extension=php_pdo_firebird.dll
    ;extension=php_pdo_mysql.dll
    ;extension=php_pdo_oci.dll
    ;extension=php_pdo_odbc.dll
    ;extension=php_pdo_pgsql.dll
    ;extension=php_pdo_sqlite.dll
    ;extension=php_pgsql.dll
    ;extension=php_shmop.dll
    extension="/usr/local/php5/lib/php/extensions/no-debug-zts-20131226/mcrypt.so"

    然后保存退出。(如果没有php.ini这个文件的同学,可以找找我其他的文章来解决,如果我写了的话!)

    然后就ok了

    增加openssl的配置

    我是从之前的PHP源码编译安装的。因为我之前的PHP源码还在的。

    01
    02
    03
    04
    05
    06
    07
    08
    09
    10
    11
     cd /root/soft/php-5.6.30/ext/openssl
     
    /usr/local/php/bin/phpize
    Cannot find config.m4.
    Make sure that you run '/usr/local/php/bin/phpize' in the top level source directory of the module
     
    mv config0.m4 config.m4
      
    ./configure --with-openssl --with-php-config=/usr/local/php/bin/php-config
     
    make && make install

    进入到/usr/local/php/etc/php.ini增加

    1
    extension=openssl.so

    如果extension=openssl.so不行就按上面那样把路径写全。至于这是什么原因会导致有些要写全有些不用写全,你可以在我的博客里找找看,如果我写了的话!

    为目录设置正确的写权限

    /app/storage这个目录是laravel的一些写文件的目录,会写log、session、页面缓存等数据,所以要对这个目录设置正确的权限。

    如果你为了方便设置chmod +777 app/storage也是可以的。但是我还是不推荐。

    我推荐将目录的权限设置为会写文件的用户名和用户组。

    1
    2
    3
    4
    5
    6
    chmod -R 777 app/storage
    #访问一下网页,看看是否有输出。
    #进入到/app/storage/session的文件组是谁?我的是nobody
    #这个是php的用户组,我的apache也是这个组
    chmod -R 775 app/storage
    chown -R :nobody app/storage

    然后就能访问了。

  • 相关阅读:
    关于Netty4.x中文教程系列更新进度的说明和道歉
    Netty4.x中文教程系列(四) ChannelHandler
    Netty4.x中文教程系列(三) Hello World !详解
    Netty4.x中文教程系列(二) Hello World !
    Netty4.x中文教程系列(一) 目录及概述
    【推荐】HTML5 UI框架 推荐
    【转载】【JQuery学习】jQuery插件开发
    前端与后端的数据交互(jquery ajax+python flask)
    【JS教程32】ajax
    【JS教程31】json
  • 原文地址:https://www.cnblogs.com/yangwenxin/p/6419279.html
Copyright © 2011-2022 走看看