今天买了台阿里云服务器用于日常开发测试(新人9块钱半年)。系统版本CentOS 6.5 64位。
首先安装Nginx:
yum install Nginx
参考文档:
在CentOS 6上搭建LNMP环境
安装完成后,使用 service Nginx start 命令启动Nginx出现错误
Nginx: [emerg] socket() [::]:80 Failed (97: Address family not supported by protocol)
解决方法见:
nginx: [emerg] socket() [::]:80 failed (97: Address family not supported by protocol)
编译安装PHP-5.6.29:
./configure --prefix=/usr/local/PHP --enable-fpm --enable-debug
(源码安装建议使用 -- prefix 指定安装路径,一方面不会污染系统目录,另一方面卸载方便。)
提示出错:
configure: error: xml2-config not found. Please check your libxml2 installation.
看来缺东西了:
yum install libxml2-devel
继续执行:
./configure --prefix=/usr/local/PHP --enable-fpm --enable-debug
make && make install
安装成功。
安装成功后续步骤:
#复制PHP.ini cp PHP.ini-development /usr/local/PHP/lib/PHP.ini cp /usr/local/PHP/etc/PHP-fpm.conf.default /usr/local/PHP/etc/PHP-fpm.conf #运行PHP-fpm /usr/local/PHP/sbin/PHP-fpm #将PHP命令加入到全局 vi /root/.bash_profile #将/usr/local/PHP/bin 加到后面,用:隔开 PATH=$PATH:$HOME/bin:/usr/local/PHP/bin #重启 source /root/.bash_profile
参考资料:
centos6.5安装php开发环境
还有一个问题:由于PHP是源码安装,因此PHP-fpm不会加入系统服务。
解决办法:
// 进入源码安装目录 cp ./sapi/fpm/init.d.PHP-fpm /etc/init.d/PHP-fpm chmod +x /etc/init.d/PHP-fpm
现在就可以通过service命令操作PHP-fpm了。
参考文章:
Nginx和PHP-FPM的启动/重启脚本
useradd www; groupadd www;
修改Nginx配置文件(/etc/Nginx/Nginx.conf)的user项,
user www www;
修改PHP-fpm的配置文件(/usr/local/PHP/etc/PHP-fpm.conf),这里主要是修改其中的user、group项。我直接贴下我的配置好了:
[global] pid = run/PHP-fpm.pid error_log = log/PHP-fpm.log log_level = notice [www] user = www group = www listen = 127.0.0.1:9000 listen.owner = www listen.group = www listen.mode = 0660 pm = static pm.max_children = 1 pm.start_servers = 10 pm.min_spare_servers = 5 pm.max_spare_servers = 20
为了测试Nginx能否解析PHP,我们在 /usr/share/Nginx/html 目录下建立一个文件index.PHP,内容为
<?PHP echo "this is PHP index file"; ?>
(这个目录下还有个文件index.html,它就对应我们常见的Nginx欢迎页)
最后还要做一件事就是修改Nginx的配置文件。你可以直接修改Nginx.conf文件,也可以修改conf.d目录下的default.conf文件,当然也可以自己新建文件,只要Nginx能够加载到就可以。
本文直接修改conf.d目录下的default.conf文件。
核心内容如下:
server { listen 80; server_name your_server_name; root /usr/share/Nginx/html; index index.html index.htm index.PHP; location ~ \.PHP$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.PHP; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }
到这里,所有工作就完成了。
(如果将index.PHP放在其他目录,要确保www用户能够访问到这个文件)
浏览器输入 your_server_name/index.PHP,就能显示我们刚才创建的index.PHP文件中的内容了。
转载于:https://www.cnblogs.com/gattaca/p/6234534.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。