Строительство LNMP под Aliyun centOS

MySQL PHP Nginx CentOS

Компания купила новое Alibaba Cloud специально для небольших программ.Установлен CentOS.Буду устанавливать среду и записывать. Время 3 мая 2018 г.

1 Просмотр информации о сервере

я получил ip имя пользователя и пароль для входа в putty После прочтения 40G+2G centOS6.3 nginx и тому подобное не установлены

2. Установите сторонний источник yum

wget http://www.atomicorp.com/installers/atomic  #下载
sh ./atomic  #安装
yum check-update  #更新yum源
2.1 Если нельзя использовать wget, сначала установите wget
yum -y install wget
2.2 Если отображается сообщение Отказано в доступе

Изменить разрешения

chmod 777 atomic

3 и 4 были съедены так что только 5

5. Установите нгинкс

yum remove httpd* php* #删除系统自带的软件包
yum install nginx #安装nginx 根据提示输入y进行安装
chkconfig nginx on #设置nginx开机启动
service nginx start #启动nginx
# yum install nginx
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * atomic: mirrors.neusoft.edu.cn
 * base: mirrors.aliyuncs.com
 * epel: mirrors.aliyuncs.com
 * extras: mirrors.aliyuncs.com
 * updates: mirrors.aliyuncs.com
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package nginx.x86_64 0:1.13.12-4308.el6.art will be installed
--> Finished Dependency Resolution

Dependencies Resolved

========================================================================================================
 Package             Arch                 Version                            Repository            Size
========================================================================================================
Installing:
 nginx               x86_64               1.13.12-4308.el6.art               atomic               956 k

Transaction Summary
========================================================================================================
Install       1 Package(s)

Total download size: 956 k
Installed size: 2.6 M
Is this ok [y/N]: yes
Downloading Packages:
nginx-1.13.12-4308.el6.art.x86_64.rpm                                            | 956 kB     00:00
warning: rpmts_HdrFromFdno: Header V4 RSA/SHA256 Signature, key ID 4520afa9: NOKEY
Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY.art.txt
Importing GPG key 0x5EBD2744:
 Userid : Atomic Rocket Turtle <admin@atomicrocketturtle.com>
 Package: atomic-release-1.0-21.el6.art.noarch (installed)
 From   : /etc/pki/rpm-gpg/RPM-GPG-KEY.art.txt
Is this ok [y/N]: yes
Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY.atomicorp.txt
Importing GPG key 0x4520AFA9:
 Userid : Atomicorp (Atomicorp Official Signing Key) <support@atomicorp.com>
 Package: atomic-release-1.0-21.el6.art.noarch (installed)
 From   : /etc/pki/rpm-gpg/RPM-GPG-KEY.atomicorp.txt
Is this ok [y/N]: y
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
Warning: RPMDB altered outside of yum.
  Installing : nginx-1.13.12-4308.el6.art.x86_64                                                    1/1
----------------------------------------------------------------------

Thanks for using nginx!

Please find the official documentation for nginx here:
* http://nginx.org/en/docs/

Please subscribe to nginx-announce mailing list to get
the most important news about nginx:
* http://nginx.org/en/support.html

Commercial subscriptions for nginx are available on:
* http://nginx.com/products/

----------------------------------------------------------------------
  Verifying  : nginx-1.13.12-4308.el6.art.x86_64                                                    1/1

Installed:
  nginx.x86_64 0:1.13.12-4308.el6.art

Complete!

Если порт оказывается занятым, обычно возможны две типичные ситуации. 1. Это ошибка ipv6 nginx, 2. Занят другими программными портами На этот раз я столкнулся с тем, что httpd занимает ipv6, см. ниже 8.1.


# netstat -ntpl
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name
tcp        0      0 0.0.0.0:80                  0.0.0.0:*                   LISTEN      1415/httpd
tcp        0      0 0.0.0.0:21                  0.0.0.0:*                   LISTEN      1422/vsftpd
tcp        0      0 0.0.0.0:22                  0.0.0.0:*                   LISTEN      1017/sshd
tcp        0      0 0.0.0.0:3306                0.0.0.0:*                   LISTEN      1389/mysqld
tcp        0      0 :::22                       :::*                        LISTEN      1017/sshd
# kill 1415
# service nginx start
Starting nginx:                                            [  OK  ]

На этом этапе просмотрите свой веб-сайт в браузере, и вы сможете увидеть приветственный интерфейс nginx.

6. Установите MySQL

yum install mysql mysql-server #输入Y即可自动安装,直到安装完成
/etc/init.d/mysqld start #启动MySQL
chkconfig mysqld on #设为开机启动
cp /usr/share/mysql/my-medium.cnf /etc/my.cnf #拷贝配置文件(注意:如果/etc目录下面默认有一个my.cnf,直接覆盖即可)
为root账户设置密码
mysql_secure_installation 回车,根据提示输入,输入2次密码,回车,根据提示一路输入Y,最后出现:Thanks for using MySQL!
MySql密码设置完成,重新启动 MySQL:
/etc/init.d/mysqld restart #重启
/etc/init.d/mysqld stop #停止
/etc/init.d/mysqld start #启动

Затем я столкнулся с некоторыми проблемами, потому что на этом сервере был установлен mysql, я удалил и переустановил, и запуск не удался.Я проверил информацию и решил это, обратившись к этому.Решение проблемы «Не удалось запустить демон MySQL» после переустановки MySql под Linux

7. Установите PHP5

yum install php php-fpm #根据提示输入Y直到安装完成
安装PHP组件,使PHP5支持MySQL
yum install php-mysql php-gd libjpeg* php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-mcrypt php-bcmath php-mhash libmcrypt #这里选择以上安装包进行安装,根据提示输入Y回车
chkconfig php-fpm on #设置php-fpm开机启动
/etc/init.d/php-fpm start #启动php-fpm

8. Настройте nginx для поддержки php

cp /etc/nginx/nginx.conf /etc/nginx/nginx.confbak  #备份原有配置文件
vi /etc/nginx/nginx.conf  #编辑
user nginx nginx; #修改nginx运行账号为:nginx组的nginx用户
:wq #保存退出
cp /etc/nginx/conf.d/default.conf /etc/nginx/conf.d/default.confbak #备份原有配置文件
vi /etc/nginx/conf.d/default.conf #编辑
index index.php index.html index.htm; #增加index.php
# 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;
}
#取消FastCGI server部分location的注释,并要注意fastcgi_param行的参数,改为$document_root$fastcgi_script_name,或者使用绝对路径
service nginx restart #重启nginx
8.1 После изменения конфигурационного файла nginx при перезагрузке может появиться сообщение об ошибке:

nginx: [emerg] socket() [::]:80 не удалось (97: семейство адресов не поддерживается протоколом) Решение:

vim /etc/nginx/conf.d/default.conf

будет

listen       80 default_server;
listen       [::]:80 default_server;

Измените его на:

listen       80;
#listen      [::]:80 default_server;

Просто перезапустите nginx

9.конфигурация php

vi /etc/php.ini #编辑
date.timezone = PRC #把前面的分号去掉,改为date.timezone = PRC
disable_functions = passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server,escapeshellcmd,dll,popen,disk_free_space,checkdnsrr,checkdnsrr,getservbyname,getservbyport,disk_total_space,posix_ctermid,posix_get_last_error,posix_getcwd,posix_getegid,posix_geteuid,posix_getgid,posix_getgrgid,posix_getgrnam,posix_getgroups,posix_getlogin,posix_getpgid,posix_getpgrp,posix_getpid,posix_getppid,posix_getpwnam,posix_getpwuid, posix_getrlimit, posix_getsid,posix_getuid,posix_isatty,posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,posix_setgid,posix_setpgid,posix_setsid,posix_setuid,posix_strerror,posix_times,posix_ttyname,posix_uname
#在386行 列出PHP可以禁用的函数,如果某些程序需要用到这个函数,可以删除,取消禁用。
expose_php = Off #禁止显示php版本的信息
short_open_tag = ON #支持php短标签
open_basedir = 网站根目录:/tmp/
#设置表示允许访问当前目录(即PHP脚本文件所在之目录)和/tmp/目录;冒号为分隔符。
:wq! #保存退出

Некоторые руководства в параметрах конфигурации open_basedir настраивают open_basedir=.:/tmp/, где '.' представляет текущий каталог. Этот метод не работает под nginx+phpfastcgi.

настроить php-fpm
cp /etc/php-fpm.d/www.conf /etc/php-fpm.d/www.confbak #备份原有配置文件
vi /etc/php-fpm.d/www.conf  #编辑
user = nginx #修改用户为nginx
group = nginx #修改组为nginx
:wq #保存退出

10. Тест

cd /usr/share/nginx/html
vi index.php #添加以下代码
<?php
phpinfo();
?>
:wq! #保存退出
chown nginx.nginx /usr/share/nginx/html -R #设置权限
service nginx restart #重启nginx
service php-fpm restart #重启php-fpm

Введите IP-адрес сервера в клиентском браузере, вы увидите соответствующую информацию о конфигурации! Указывает, что конфигурация lnmp выполнена успешно!

На этом установка CnetOS и настройка LNMP (Nginx+PHP+MySQL) завершена. ####11. Посмотреть версию Проверить версию центоса

more /etc/issue;
CentOS release 6.8 (Final)

Проверить версию nginx

nginx -v 
nginx version: nginx/1.6.2

Проверить версию mysql

mysql -uroot -p
然后输入 password
status;
mysql  Ver 14.14 Distrib 5.5.55, for Linux (x86_64) using readline 5.1

проверить версию пхп

php -v
PHP 5.4.45 (cli) (built: Aug 23 2016 14:41:13)

11. Для записи сохраненной информации

item Информация
VPS ссылка на сайт
Имя пользователя Пароль
Примеры VPS выше айпи адрес
корневой пароль Centos
CentOS release 6.3 (Final)
mysql пароль mysqlroot

Ссылаться наУстановка CentOS 6.5 и настройка LNMP-сервера (Nginx+PHP+MySQL) Getting Started with Linode Просмотр информации о версиях apache, php, mysql в CentOS Подробное объяснение файлов установки и конфигурации сервера nginx.

Решение проблемы «Не удалось запустить демон MySQL» после переустановки MySql под Linux Установка и настройка сервера LNMP (Rhel+Nginx+PHP+MySQL)