LNMP(即nginx-mysql-php)服务器一直是被认为性能高,内存占用少的服务器,下面我们来介绍怎么通过简单的YUM命令安装,当然,你也可以试下lnmp一键安装。
导入第三方软件库
centos 5 32位:
- rpm -Uvh http://nginx.org/packages/centos/5/noarch/RPMS/nginx-release-centos-5-0.el5.ngx.noarch.rpm
- rpm -Uvh http://centos.alt.ru/repository/centos/5/i386/centalt-release-5-3.noarch.rpm
centos 5 64位:
- rpm -Uvh http://nginx.org/packages/centos/5/noarch/RPMS/nginx-release-centos-5-0.el5.ngx.noarch.rpm
- rpm -Uvh http://centos.alt.ru/repository/centos/5/x86_64/centalt-release-5-3.noarch.rpm
安装mysql
1、先卸载系统自带的apache,然后更新软件库
- yum remove httpd
- yum update
2、yum安装mysql
- yum install mysql mysql-server
3、加入启动项并启动mysql
- chkconfig --levels 235 mysqld on
- /etc/init.d/mysqld start
4、设置mysql密码及相关设置
PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
To do so, start the server, then issue the following commands:
/usr/bin/mysqladmin -u root password 'new-password'
/usr/bin/mysqladmin -u root -h c44185 password 'new-password'
Alternatively you can run:
/usr/bin/mysql_secure_installation
which will also give you the option of removing the test
databases and anonymous user created by default. This is
strongly recommended for production servers.
See the manual for more instructions.
You can start the MySQL daemon with:
cd /usr ; /usr/bin/mysqld_safe &
You can test the MySQL daemon with mysql-test-run.pl
cd mysql-test ; perl mysql-test-run.pl
Please report any problems with the /usr/bin/mysqlbug script!
因为第一次启动这命令,所以直接回车下一步,然后输入你的mysql密码,按照提示操作。
安装nginx
1、yum安装nginx
- yum install nginx
2、添加到启动项并启动nginx
- chkconfig --levels 235 nginx on
- /etc/init.d/nginx start
安装php
1、安装php及相关模块
- yum install php-fpm php-cli php-mysql php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-mcrypt php-mssql php-snmp php-soap php-tidy
- 安装时可能会报缺少t1lib-5.1.2-2.fc9.x86_64.rpm,需要到http://rpm.pbone.net/index.php3/stat/3/limit/3/srodzaj/1/dl/40/search/libt1.so.5/field[]/1/field[]/2里的http://rpm.pbone.net/index.php3/stat/4/idpl/11833892/dir/centos_5/com/t1lib-5.1.2-1.1.i386.rpm.html去下载
2、编辑文件php.ini,在文件末尾添加cgi.fix_pathinfo = 1
- vi /etc/php.ini
3、启动php-fpm
- service php-fpm start
4、php-fpm加入启动项
- chkconfig --levels 235 php-fpm on
修改nginx配置文件,添加fastcgi支持
1、修改nginx.conf文件
vi /etc/nginx/nginx.conf
配置文件部分代码:
user nginx;
worker_processes 10;
worker_rlimit_nofile 100000;
error_log /var/log/nginx/error.log;
#error_log /var/log/nginx/error.log notice;
#error_log /var/log/nginx/error.log info;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
use epoll;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log main;
sendfile on;
tcp_nopush on;
tcp_nodelay on;
server_tokens off;
gzip on;
gzip_static on;
gzip_comp_level 5;
gzip_min_length 1024;
keepalive_timeout 65;
limit_conn_zone $binary_remote_addr zone=addr:10m;
# Load config files from the /etc/nginx/conf.d directory
include /etc/nginx/conf.d/*.conf;
server {
# limit_conn addr 10;
listen 80;
server_name _;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root /usr/share/nginx/html;
index index.html index.htm index.php;
}
error_page 404 /404.html;
location = /404.html {
root /usr/share/nginx/html;
}
# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
# proxy the PHP scripts to Apache listening on 127.0.0.1:80
#
#location ~ \.php$ {
# proxy_pass http://127.0.0.1;
#}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
# deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
location ~ /\.ht {
deny all;
}
}
# another virtual host using mix of IP-, name-, and port-based configuration
#
#server {
# listen 8000;
# listen somename:8080;
# server_name somename alias another.alias;
# location / {
# root html;
# index index.html index.htm;
# }
#}
# HTTPS server
#
#server {
# listen 443;
# server_name localhost;
# ssl on;
# ssl_certificate cert.pem;
# ssl_certificate_key cert.key;
# ssl_session_timeout 5m;
# ssl_protocols SSLv2 SSLv3 TLSv1;
# ssl_ciphers HIGH:!aNULL:!MD5;
# ssl_prefer_server_ciphers on;
# location / {
# root html;
# index index.html index.htm;
# }
#}
}
33行的/usr/share/nginx/html修改为你的网站根目录。
2、重启nginx php-fpm
- /etc/init.d/nginx restart
- /etc/init.d/php-fpm restart
3、建立info.php文件
- vi /usr/share/nginx/html/info.php
添加如下代码:
- <?php
- phpinfo();
- ?>
在浏览器打开测试是否正常,如http://www.centos.bz/info.php