前置條件
增加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
|
然后就能訪問了。
