下午在安装 Laravel 框架过程中,遇到了不少问题,因为 Laravel 的安装依赖于 composer,这里就先介绍一下 composer 的安装方法:
安装方法:
代码如下 | 复制代码 |
#下载 #更改文件权限 #移动文件 #更新 ______ Usage: Options: |
例子
(1).重新编译一遍PHP(这种方法要编译的东西比较多,因此比较费时),
(2).单独编译FTP扩展然后配置php支持该扩展(这种方式比较省时,因此选用这种方式进行)
(1).解压PHP源码
tar xvf php-5.3.5.tar.bz2
cd php-5.3.5
(2).进入ftp扩展目录编译
cd ext/ftp
(3).运行phpize,为PHP扩展编译做准备
$PREFIX/php/bin/phpize
(4).配置ftp扩展(php-config是获取PHP环境的命令)
./configure --with-php-config=$PREFIX=/php/bin/php-config
(5).编译和安装
make && make install
说明:安装好后会显示扩展安装到的目录,如
$PREFIX/php/lib/php/extensions/no-debug-zts-20090626/
(6).配置php.ini加入:
extension_dir=$PREFIX/lib/php/extensions/no-debug-zts-20090626
extension=ftp.so
(7).重启Apache服务器即可生效
service httpd restart
例子 hpize 命令是用来准备 PHP 外挂模块的编译环境的。下面例子中,外挂模块的源程序位于 extname 目录中:
$ cd extname
$ phpize
$ ./configure (注一)
$ make
$ make install
成功的安装将建立 extname.so 并放置于 PHP 的外挂模块目录中 (预设存放于 /usr/lib/php/modules/ 内) 。
需要调整 php.ini,加入 extension=extname.so 这一行之后才能使用此外挂模块。
编译添加扩展
编译PHP所需要的支持
yum install gcc
yum install libxml2-devel curl-devel libjpeg libjpeg-devel libpng-devel freetype-devel.x86_64 mysql-devel
yum install freetype-devel.x86_64 freetype.x86_64
yum install libjpeg libjpeg-devel
下载PHP:wget http://us1.php.net/distributions/php-5.3.28.tar.bz2
tar -jxf php-5.3.28.tar.bz2
cd php-5.3.28
./configure –prefix=/usr/local/php-5.3.28 –enable-fpm –with-mysql –with-zlib –with-config-file-path=/usr/local/php5.3.28/etc –with-pdo-mysql –with-libdir=lib64 –with-gd –with-jpeg-dir=/usr/lib –with-png-dir=/usr/lib –enable-mbstring –enable-gd-native-ttf –enable-xml –with-freetype-dir –with-curl –enable-ftp –enable-zip –with-mcrypt –enable-mbstring –enable-json
出现失败
checking for alloca… (cached) yes
checking for 8-bit clean memcmp… yes
checking for stdarg.h… (cached) yes
checking for mcrypt support… yes
configure: error: mcrypt.h not found. Please reinstall libmcrypt
rpm -qa | grep libmcrypt
libmcrypt-2.5.7-5.el5
libmcrypt-2.5.8-4.el5.centos
有但是失败,上面的是用yum安装,不对,难道需要去下载包编译??试试呗:
wget ftp://mcrypt.hellug.gr/pub/crypto/mcrypt/attic/libmcrypt/libmcrypt-2.5.7.tar.gz 安装:
tar -zxvf libmcrypt-2.5.7.tar.gz
cd libmcrypt-2.5.7
./configure
make
make install
前面我们介绍我了 composer安装,这里我们接着来介绍 Laravel框架的安装。
这里我们安装的是laravel 4
项目下载地址:https://github.com/laravel/laravel
安装要求:
1、PHP最低版本:5.3.7
2、支持 mcrypt 扩展
3、支持 openssl 扩展
另外,需要支持 proc_open、proc_get_status函数,自己在安装过程中,因为不支持这2个函数,安装报错失败了
代码如下 | 复制代码 |
[Symfony\Component\Process\Exception\RuntimeException] [ErrorException] |
可以通过php配置文件中的disable_functions查看是否支持这2个函数。
进入正题,Laravel安装方法:
1、下载安装包,解压
2、进入解压目录,执行命令
composer install 安装过程中会下载一些框架核心包,慢慢等待即可。
安装完成后通过URL地址访问:
这里需要提醒一下:要把域名解析到public目录,才可以正常访问
代码如下 | 复制代码 |
listen 80; |
一开始时自己把域名解析到 /home/wwwroot/www.111cn.net 目录,通过域名范围后报404错误
不加--prefer-dist的话安装下来有100多M
composer create-project laravel/laravel . --prefer-dist
如果你没有开启OpenSSL的话我们的不能使用ssl功能,如果我们发邮箱使用ssl加密就无法使用了,但要开启它是非常的简单的,具体如下XAMPP打开OpenSSL方法:
(1)检查X:/xampp/php/ext目录下是否存在php_openssl.dll文件,如果不存在就先去PHP官网下载放入。
(2)打开X:/xampp/php/php.ini文件,查找extension=php_openssl.dll,如果找到了,去掉前面的分号;
如果没找到就在extension=php_curl.dll的下一行添加如下代码:
extension=php_openssl.dll
然后重启Apache就行了。
为什么不用zend debugger,反而舍本求末用个偏方呢?因zend debugger目前最高只支持到php-5.3.x,php-5.4.x和php-5.5.x搞不定,所以需要xdebug,它就一备胎。1、下载安装xdebug
1.1 到http://xdebug.org/download.php 下载适合你的PHP版本的xdebug
1.2 复制到php安装目录的ext文件夹,改名为php_xdebug.dll
1.3 配置xdebug
在php.ini尾部添加如下
[xdebug]
zend_extension="php_xdebug.dll"
xdebug.remote_enable = On
xdebug.remote_host = "localhost"
xdebug.remote_port = 9000
xdebug.remote_handler = "dbgp"
xdebug.auto_trace = 1
xdebug.collect_includes = 1
xdebug.collect_params = 1
xdebug.collect_return = 1
xdebug.default_enable = 1
xdebug.collect_assignments = 1
xdebug.collect_vars = 1
xdebug.remote_autostart = 1
xdebug.remote_connect_back = 1
xdebug.show_local_vars = 1
xdebug.show_exception_trace = 0
运行phpinfo();看有xdebug模块信息出来就是搞定了。
2、配置Zend Studio 支持xdebug
这里的配置很重要
选择Zend Studio 的 Window 》 Preference 》 PHP 》Installed Debuggers 双击 Xdebug,弹出对话框如下图
Debug Port 设为跟php.ini中设置的一样(默认是9000)。
Accept remote session(JIT) 选择localhost
允许浏览器访问网站时zend studio自动打开文件开始调试。
选项说明: http://www.111cn.net
off: 关闭浏览器访问时打开调试功能;
localhost: 通过localhost访问网页的时候打开调试。
any:只要访问服务器上的php都打开调试;
prompt:访问服务器上的php时弹出询问是否要调试。
一旦打开zend studio允许xebug调试,所有访问php页面都会进入调试。
我们可以使用easy xdebug火狐插件可在客户端控制是否开启调试。
1、首先php.ini设置
xdebug.remote_autostart = 0
不自动启动调试。
2、安装火狐插件easy xdebug,
安装好该插件后,点击如下图右下角小绿虫后,虫子上面有个小红点,这时候我们访问测试服务器的时候,Zend Studio就回自动弹出调试。
另外,可设置使用xdebug,在zend studio中对直接调试php文档,这里就不多说了。
Views – 61