微魔之前曾经跟大家分享过在OpenSUSE上安装LAMP套件,今天的教程是针对LNMP的(国外更喜欢叫LEMP),另外,出于种种原因,现在大家似乎都更喜欢更加开放、更加社区化的MariaDB,而非传统的MySQL,因此,本文也默认安装MariaDB,虽然两个数据库已经有所分歧,但是在微魔这个小白级使用者来看,MySQL的命令基本可以直接移植到MariaDB上使用,程序的兼容性也是如此,因此大可不必担心使用上的问题,而从目前诸多发行版对MariaDB的偏好来看,似乎迁移已经成了顺应潮流,总之,微魔觉得,这种东西随大流就好。言归正传,本文除了文末的memcached拓展的安装外,主题软件均采用发行版(42.1,VPS如何升级?)自带软件源进行安装,因此不会浪费过多的等待时间。
OpenSUSE安装LEMP/LNMP套件
1.装nginx、php5和MariaDB
zypper install nginx php5 php5-fpm php5-mysql mariadb-tool mariadb mariadb-client
2.调整nginx配置文件
在/etc/nginx/nginx.conf中的server块里加入如下内容
注意:默认安装nginx里面被注释掉的有类似的内容,但是与下面配置$document_root不同,采用默认配置的话,会造成无法定位文件的错误
location ~\.php$ { root /usr/share/nginx/html; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root/$fastcgi_script_name; include fastcgi_params; }
3.启动Nginx
systemctl start nginx
4.复制php-fpm配置文件
cp /etc/php5/fpm/php-fpm.conf.default /etc/php5/fpm/php-fpm.conf
5.启动php-fpm
systemctl start php-fpm
6.在默认目录(/srv/www/htdocs)下建立测试文件info.php文件,内容如下
<?php phpinfo(); ?>
如果访问http://公网ip/info.php,能够看到php信息页面的话,即成功。
7.启动MariaDB
systemctl start mysql
8.设置自启动
systemctl enable mysql nginx php-fpm
默认的配置文件位置
Nginx配置文件: 主配置文件:/etc/nginx/nginx.conf Nginx Server配置文件:/etc/nginx/conf.d/default.conf PHP配置文件: /etc/php5/cli/php.ini php-fpm配置文件: /etc/php5/fpm/php-fpm.conf
9. 拓展:为php安装memcached拓展
安装memcached拓展的方法很多,可以使用pcel进行安装(传送),本文将采用的是传统的编译安装模式
a.安装必要的库及编译软件
zypper in libmemcached libmemcached-devel php5-devel gcc
b.下载并解压php-memcached(推荐下载地址:http://pecl.php.net/package/memcached)
wget http://pecl.php.net/get/memcached-2.2.0.tgz tar zxvf memcached-2.2.0.tgz cd memcached-2.2.0
c.phpize命令生成configure
phpize
d.编译并安装memcached拓展库
./configure --enable-memcached make && make install
成功后会在/usr/lib64/php5/extensions下生成文件memcached.so
e.将本目录下的memcached.ini,加入如下内容
extension=memcached.so
复制memcached到php配置文件夹
cp memcached.ini /etc/php5/conf.d
f.检验memcached安装是否成功
php -m
若成功,则会在返回内容中看到memcached