当前位置: 首页 > Linux

阿里云服务器ECS搭建LNMP

时间:2023-04-06 21:53:23 Linux

购买阿里云服务后,搭建服务器并安装nginx1http://nginx.org/en/download.html下载最新版nginx2解压nginx安装包tar-xzfnginx-1.9.3。tar.gz3进入nginx-1.9.34安装zlib库#sudoapt-getinstallzlib1g-dev//Ubuntu#sudoyuminstallzlib-devel//centos5安装PCRE库#sudoapt-getinstalllibpcre3-dev#Ubuntu#sudoyuminstallpcre-devel#CentOS6安装可选的OpenSSL#sudoapt-getinstallopenssl#sudoapt-getinstalllibssl-dev#sudoyuminstallopenssl#sudoyuminstallopenssl-devel7输入/src/core,然后用vi打开nginx.h头文件8./configure//执行配置命令【nginx默认安装在usr/local/nginx】9执行makeinstall10执行nginx-t查看配置文件正确11进入/usr/local/nginx/sbin目录#./nginx//启动nginx服务#./nginx-sreload//重启服务//如果发现80端口被占用,可能是nginx服务已经启动了。#pkillnginx//终止nginx服务。#ps-ef|grepnginx命令查看内存中是否有nginx进程。安装php1,安装gcc和libxml2#yuminstallgcc-y#yuminstalllibxml2*-y2,下载官方最新的PHP安装包http://php.net/downloads.php3、解压安装包#tarzxvfphp-5.6.29.tar.gz4,installphp#cdphp-5.6.28//最简单的配置,(配置phpmyadmin时,出现缺少扩展名mbstring、mysqli的问题)#./configure--prefix=/usr/local/php--enable-fpm//--prefix//更完整的配置(但可能缺少库)#./configure--prefix=/usr/local/php--with-config-file-path=/usr/local/php/etc--with-mysql=mysqlnd--with-mysqli=mysqlnd--with-pdo-mysql=mysqlnd--with-zlib--with-libxml-dir--with-gd--with-iconv--with-curl--with-png-dir--with-jpeg-dir--enable-sockets--enable-mbstring--enable-inline-optimization--enable-zend-multibyte--with-freetype-dir//本次使用的个人配置#./configure--prefix=/usr/local/php--with-config-file-path=/usr/local/php/etc--with-mysql=mysqlnd--with-mysqli=mysqlnd#make&&makeinstall//编译安装5、复制生产环境的PHP配置文件cp/home/develop/php-5.6/php.ini-production/usr/local/php/etc/php.ini6,复制php-fpm的配置文件(如无特殊要求,使用默认配置即可)cp/usr/local/php/etc/php-fpm.conf.default/usr/local/php/etc/php-fpm.conf7,启动服务#cd/usr/local///启动nginx服务#./nginx/sbin/nginx//启动php#./php/sbin/php-fpm-c/usr/local/php/etc/php.ini-y/usr/local/php/etc/php-fpm.conf8,配置php和nginx和fastcgi//打开nginx配置文件#cd/usr/local#vinginx/conf/nginx.conf有一段修改为location~\.php${root/mnt/www;fastcgi_pass127.0.0.1:9000;fastcgi_indexindex.php;fastcgi_paramSCRIPT_FILENAME/scripts$fastcgi_script_name;包括fastcgi.conf;}//其中fastcgi.conf在/usr/localnginx/conf/,安装内置如果出现以下问题,说明配置不当:FastCGIsentinstderr:"Primaryscriptunknown"whilereadingresponseheaderfromupstream,client:180.167.68.134,server:localhost,request:"GET/index.phpHTTP/1.1",upstream:"fastcgi://127.0.0.1:9000",host:"*.*.*.*"安装mysql卸载mysqlps-ef|grepmysql查看安装路径find/-namemysql查看相关文件包rpm-qa|grep-imysql查看相关组件rpm-evmysql-community-server-5.6.35-2.el7.x86_64删除组件rpm-evmysql-community-client-5.6.35-2.el7.x86_64rpm-evphp-mysql-5.4.16-42.el7.x86_64rpm-evmysql-community-release-el7-5.noarchrpm-evmysql-community-libs-5.6.35-2.el7.x86_64rpm-e--nodepsmysql-community-libs-5.6.35-2.el7.x86_64//强制卸载rm-rf/var/lib/mysql删除文件rm-rf/var/lib/mysql/mysqlrm-rf/usr/share/mysqlmore/etc/passwd|grepmysqlmore/etc/阴影|grepmysql删除组,用户更多/etc/group|grepmysql删除组,用户userdelmysql删除用户组delmysql删除组rpm-qa|grep-imysql确认是否卸载安装mysql下载MySQL-5.6.35-1.linux_glibc2.5.x86_64.rpm-bundle.tar解压tar-xvfMySQL-5.6.35-1.linux_glibc2.5.x86_64.rpm-bundle.tarcdMySQL-5.6.35//修改文件名为MySQL-5.6.35yuminstallMySQL-shared-compat-5.6.35-1.linux_glibc2.5.x86_64.rpm#安装RHEL兼容包yuminstallMySQL-server-5.6.35-1.linux_glibc2.5.x86_64.rpm#MySQL服务器程序yuminstallMySQL-client-5.6.35-1。linux_glibc2.5.x86_64.rpm#MySQL客户端程序yuminstallMySQL-devel-5.6.35-1.linux_glibc2.5.x86_64.rpm#MySQL库和头文件yuminstallMySQL-shared-5.6.35-1.linux_glibc2.5.x86_64.rpm#MySQL的共享库cat/root/.mysql_secret配置MySQL登录密码//获取MySQL安装时生成的随机密码为2M*8cservicemysqlstart#启动MySQL服务mysql-uroot-p#进入MySQL,使用在SETPASSWORDFOR'root'@'localhost'=PASSWORD('mypassword')之前获得的随机密码;//在MySQL命令行设置root账号密码为mypasswordquit#退出MySQL命令行servicemysqlrestart#重启MySQL服务yuminstallmysqlyuminstalllibaio#安装libaio依赖包wgethttp://dev.mysql.com/get/mysq...yumlocalinstallmysql-community-release-el7-5.noarch.rpmyuminstallmysql-community-serverstart并关闭MySQLServersystemctlstartmysqld//EnableActivateMySQLServersystemctlstatusmysqld//查看MySQLServer状态systemctlstopmysqld//关闭MySQLServer防火墙并设置firewall-cmd(推荐)centos7onlyfirewall-cmd--permanent--zone=public--add-port=3306/tcpfirewall-cmd--permanent--zone=public--add-port=3306/udp//打开对应端口firewall-cmd--reload//使最新的防火墙设置规则生效重置mysql密码1、systemctlstartmysqld先启动2、mysql_secure_installation安全设置(按回车不用密码)设置root密码?[Y/n]y[设置root用户密码]删除匿名用户?[Y/n]y[删除匿名用户]禁止root远程登录?[Y/n]n[禁止root远程登录]删除测试数据库并访问它?[Y/n]y[删除测试数据库]现在重新加载权限表?[Y/n]y[刷新权限]3.新建数据库//登录MYSQL(有ROOT权限)。这里我以ROOT登录[root@iZ28gvqe4biZ~]#mysql-uroot-p//首先为用户mysql创建一个数据库hivemeta>createdatabasehivemeta;mysql>usehivemeta//授权hdp用户拥有hivemeta数据库的所有权限。mysql>将*.*上的所有权限授予hdp@"%"由"hdp"标识并具有授予选项;//刷新系统权限表mysql>flushprivileges;mysql>使用hivemeta;//mysql/hive字符集问题mysql>alterdatabasehivemetacharactersetlatin1;安装phpMyAdmin下载phpMyAdmintarzxvfphp-5.6.5.2.all-language.tar.gz//解压访问phpMyAdmin/index.php问题1添加mbstring扩展#cd/usr/src/php-5.6.29/ext/mbstring#/usr/local/php/bin/phpize#./configure--with-php-config=/usr/local/php/bin/php-config#make&&makeinstall#echo'扩展名=mbstring.so'>>/usr/local/php/lib/php.ini//或者打开php.ini直接添加extension=mbstring.so字段#重启服务器问题2添加mysqli扩展#cd/usr/src/php-5.6.29/ext/mysqli#/usr/local/php/bin/phpize#./configure--with-php-config=/usr/local/php/bin/php-config#make&&makeinstall#这样就会在/usr/local/php/lib/php/extensions/no-debug-non-ztszh中生成mysqli.so文件#echo'extension=mysqli.so'>>/usr/local/php/库/PHP。ini#或者打开php.ini直接添加extension=mysqli.sofield#网络上的另一种配置是#./configure--with-php-config=/usr/local/php/bin/php-config--with-mysql=/usr/lib64/mysql/#./configure--with-php-config=/usr/local/php/bin/php-config--with-mysqli=/usr/lib64/mysql/bin/mysql_config#这是mysql5.5之前的-with-mysql指的是mysql的安装路径。现在mysql5.6默认安装在/usr/lib64/mysql/下,但是没有mysql_config文件。错误打开phpMyAdmin/index.php提示YouareusingPHP'sdeprecated'mysql'extension,解决方法:修改phpmyadmin中的config.inc.php:$cfg'Servers'['extension']='mysqli';执行PHP配置命令./configure提示如下错误:checkingforOS+Linux2.6.32-431.el6.x86_64x86_64checkingforCcompiler...notfound解决办法:yum-yinstallgccgcc-c++autoconfautomakemakeusingSFTPerror:Receivedunexpectedend-of-filefromSFTPserver解决办法:vi/etc/ssh/sshd_config删除Subsystemsftp/usr/libexec/openssh/sftp-server前面的“#”,保存退出,重启SSHservicesshd重启然后重连FTP测试