centos7--LNMP搭建wordpress出错,非常困难,找不出原因!求大神帮忙一下,谢谢!-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

centos7--LNMP搭建wordpress出错,非常困难,找不出原因!求大神帮忙一下,谢谢!

skyrainx 2019-07-31 15:06:34 997

步骤一:准备编译环境 1. 关闭防火墙。 i. 输入 systemctl status firewalld命令查看当前防火墙的状态。

ii. 如果防火墙的状态参数是inactive,则防火墙为关闭状态, 可跳过此步骤。如果防火墙的状态参数是active,则防火墙为开启状态。如上图所示,此处防火墙为开启状态,需要运行如下命令关闭防火墙:  如果您想临时关闭防火墙,输入命令systemctl stop firewalld。 说明 这只是暂时关闭防火墙,下次重启Linux后,防火墙还会开启。  如果您想永久关闭防火墙,输入命令systemctl disable firewalld。 说明 您可参考firewalld官网信息来决定何时开启防火墙。 2. 关闭SELinux。 i. 运行getenforce命令查看SELinux的当前状态。

ii. 如果SELinux状态参数是Disabled, 则SELinux为关闭状态,可跳过此步骤。如果SELinux状态参数是Enforcing,则SELinux为开启状态。如上图所示,此处SELinux为开启状态,需要运行如下命令关闭SELinux:  如果您想临时关闭SELinux,输入命令setenforce 0。 说明 这只是暂时关闭SELinux,下次重启Linux后,SELinux还会开启。  如果您想永久关闭SELinux,输入命令vi /etc/selinux/config编辑SELinux配置文件。回车后,把光标移动到SELINUX=enforcing这一行,按下i键进入编辑模式,修改为SELINUX=disabled, 按下Esc键,然后输入:wq并回车以保存并关闭SELinux配置文件。 说明 您可参考redhat关于SELinux的官方文档来决定何时开启SELinux。 iii. 重启系统使设置生效。 步骤二:安装Nginx 1. 运行以下命令安装Nginx。 yum -y install nginx 2. 运行以下命令查看Nginx版本。 nginx -v
返回结果如下所示,表示Nginx安装成功。 nginx version: nginx/1.12.2
步骤三:安装MySQL 1. 运行以下命令更新YUM源。 rpm -Uvh http://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm 2. 运行以下命令安装MySQL。 yum -y install mysql-community-server 3. 运行以下命令查看MySQL版本号。 mysql -V 返回结果如下,表示MySQL安装成功。 mysql Ver 14.14 Distrib 5.7.25, for Linux (x86_64) using EditLine wrapper 步骤四:安装PHP 1. 依次运行以下命令更新YUM源。 2. # yum install -y http://dl.iuscommunity.org/pub/ius/stable/CentOS/7/x86_64/ius-release-1.0-15.ius.centos7.noarch.rpm

rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

说明 本教程以 ius-release-1.0-15.ius.centos7.noarch.rpm版本为例。实际安装过程中,请您使用最新版本ius-release软件包。 3. 运行以下命令安装PHP。 yum -y install php70w-devel php70w.x86_64 php70w-cli.x86_64 php70w-common.x86_64 php70w-gd.x86_64 php70w-ldap.x86_64 php70w-mbstring.x86_64 php70w-mcrypt.x86_64 php70w-pdo.x86_64 php70w-mysqlnd php70w-fpm php70w-opcache php70w-pecl-redis php70w-pecl-mongo 4. 运行以下命令查看PHP版本。 php -v 返回结果如下所示,表示安装成功。 PHP 7.0.33 (cli) (built: Dec 6 2018 22:30:44) ( NTS ) Copyright (c) 1997-2017 The PHP Group Zend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies with Zend OPcache v7.0.33, Copyright (c) 1999-2017, by Zend Technologies
步骤五:配置Nginx 1. 运行以下命令备份Nginx配置文件。 cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.bak 2. 运行以下命令打开Nginx配置文件。 vim /etc/nginx/nginx.conf 3. 按i进入编辑模式。 4. 在server大括号内,添加下列配置信息,使Nginx支持PHP请求。 5. location / { 6. index index.php index.html index.htm; 7. } 8. #配置Nginx通过fastcgi方式处理您的PHP请求 9. location ~ .php$ { 10. root /usr/share/php; 11. fastcgi_pass 127.0.0.1:9000; #Nginx通过本机的9000端口将PHP请求转发给PHP-FPM进行处理。 12. fastcgi_index index.php; 13. fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; 14. include fastcgi_params; #Nginx调用fastcgi接口处理PHP请求 }
说明 若不添加此配置信息,则会导致Nginx无法处理您的PHP请求,即您请求的PHP页面将无法打开。删除源代码中的 local / { }。 15. 运行以下命令启动Nginx服务。 systemctl start nginx 16. 运行以下命令添加Nginx服务开机自启动。 systemctl enable nginx 步骤六:配置MySQL 1. 运行以下命令启动MySQL服务。 systemctl start mysqld 2. 运行以下命令设置MySQL服务开机自启动。 systemctl enable mysqld 3. 运行以下命令查看/var/log/mysqld.log文件,获取并记录root用户的初始密码。 4. # grep 'temporary password' /var/log/mysqld.log 2016-12-13T14:57:47.535748Z 1 [Note] A temporary password is generated for root@localhost: p0/G28g>lsHD 说明 下一步重置root用户密码时,会使用该初始密码。 5. 运行下列命令配置MySQL的安全性。 mysql_secure_installation 安全性的配置包含以下五个方面: i. 重置root账号密码。 ii. Enter password for user root: #输入上一步获取的root用户初始密码 iii. The 'validate_password' plugin is installed on the server. iv. The subsequent steps will run with the existing configuration of the plugin. v. Using existing password for root. vi. Estimated strength of the password: 100 vii. Change the password for root ? ((Press y|Y for Yes, any other key for No) : Y #是否更改root用户密码,输入Y viii. New password: #输入新密码,长度为8至30个字符,必须同时包含大小写英文字母、数字和特殊符号。特殊符号可以是()` ~!@#$%^&*-+=|{}[]:;‘<>,.?/ ix. Re-enter new password: #再次输入新密码 x. Estimated strength of the password: 100 Do you wish to continue with the password provided?(Press y|Y for Yes, any other key for No) : Y xi. 输入Y删除匿名用户账号。 xii. By default, a MySQL installation has an anonymous user, allowing anyone to log into MySQL without having to have a user account created for them. This is intended only for testing, and to make the installation go a bit smoother. You should remove them before moving into a production environment. xiii. Remove anonymous users? (Press y|Y for Yes, any other key for No) : Y #是否删除匿名用户,输入Y Success. xiv. 输入Y禁止root账号远程登录。 xv. Disallow root login remotely? (Press y|Y for Yes, any other key for No) : Y #禁止root远程登录,输入Y Success. xvi. 输入Y删除test库以及对test库的访问权限。 xvii. Remove test database and access to it? (Press y|Y for Yes, any other key for No) : Y #是否删除test库和对它的访问权限,输入Y xviii. - Dropping test database... Success. xix. 输入Y重新加载授权表。 xx. Reload privilege tables now? (Press y|Y for Yes, any other key for No) : Y #是否重新加载授权表,输入Y xxi. Success. All done! 更多详情,请参见官方文档。 步骤七:配置PHP 1. 在/usr/share/php目录下新建phpinfo.php文件,用于展示phpinfo信息。具体步骤如下: i. 运行vim /usr/share/php/phpinfo.php命令打开文件。 ii. 按i进入编辑模式。 iii. 输入下列内容。

iv. 按:wq保存并退出。
  1. 运行以下命令启动PHP-FPM。 systemctl start php-fpm
  2. 运行以下命令设置PHP-FPM开机自启动。 systemctl enable php-fpm 步骤八:测试访问
  3. 打开浏览器。
  4. 在地址栏输入http://<ECS实例公网IP地址>/phpinfo.php。 返回结果如下图所示,表示LNMP环境部署成功。

下一步 测试访问LNMP平台成功后,建议您运行以下命令将 /usr/share/php/phpinfo.php文件删除,以避免安全隐患。 rm -rf /usr/share/php/phpinfo.php

安装和配置 WordPress 下载 说明: WordPress 可从 WordPress 官方网站 下载 WordPress 最新中文版本并安装,本教程采用 WordPress 中文版本。 1. 依次执行以下命令,进入/usr/share/nginx/html/目录,并下载与解压 WordPress。 o 2. cd /usr/share/nginx/html 3. wget https://cn.wordpress.org/wordpress-5.0.4-zh_CN.tar.gz tar zxvf wordpress-5.0.4-zh_CN.tar.gz 配置数据库 在写博客之前,需要先建好数据库,以存储各类数据。请根据以下步骤进行 MariaDB 数据库配置。 1. 执行以下命令,使用 root 用户登录到 MariaDB 服务器。 o mysql -uroot -pXXXXX(XXXXX 表示安装 MariaDB 时设置的登录密码) 2. 执行以下命令,创建 MariaDB 数据库。例如 “wordpress”。 o CREATE DATABASE wordpress; 3. 执行以下命令,创建一个新用户。例如 “user”。 o CREATE USER user; 4. 执行以下命令,为 “user” 用户设置密码。例如 “wordpresspassword”。 o SET PASSWORD FOR user=PASSWORD("wordpresspassword"); 5. 执行以下命令,赋予用户对 “wordpress” 数据库的全部权限。 o GRANT ALL PRIVILEGES ON wordpress.* TO user IDENTIFIED BY 'wordpresspassword'; 6. 执行以下命令,使所有配置生效。 o FLUSH PRIVILEGES; 7. 执行以下命令,退出 MariaDB。 o \q 写入数据库信息 1. 依次执行以下命令,进入 WordPress 安装目录,将wp-config-sample.php文件复制到wp-config.php文件中,并将原先的示例配置文件保留作为备份。 o 2. cd /usr/share/nginx/html/wordpress cp wp-config-sample.php wp-config.php 3. 执行以下命令,打开并编辑新创建的配置文件。 o vim wp-config.php 4. 按 “i” 或 “Insert” 切换至编辑模式,找到文件中 MySQL 的部分,将 配置数据库 中已配置好的数据库相关信息写入。 o 5. // ** MySQL settings - You can get this info from your web host ** // 6. /** The name of the database for WordPress / 7. define('DB_NAME', 'wordpress'); 8. 9. /* MySQL database username / 10. define('DB_USER', 'user'); 11. 12. /* MySQL database password / 13. define('DB_PASSWORD', 'wordpresspassword'); 14. 15. /* MySQL hostname */ define('DB_HOST', '127.0.0.1'); 16. 修改完成后,按“Esc”,输入“:wq”,保存文件返回。 验证 WordPress 安装 1. 在浏览器地址栏输入云服务器实例的公网 IP 加上 wordpress 文件夹,例如: o http://192.xxx.xxx.xx /wordpress

阿里云ECS服务的3306端口,也已经打开了。但是输入 实例公网IP/wordpress ,就显示网页打不开,谁能帮解答一些吗?是什么原因,怎么进行排查呢?谢谢大家。

关系型数据库 MySQL 应用服务中间件 Linux 网络安全 PHP 数据库 开发工具 nginx 数据安全/隐私保护
分享到
取消 提交回答
全部回答(2)
  • 老离
    2019-09-11 17:07:14
    推荐

    如果是做实验可以去阿里云大学寻找类似的实验参考,如果是自己使用可以考虑安装一个宝塔面板,通过面板搭建环境

    0 0
  • 宝商科技
    2019-12-13 23:43:05

    建议购买ECS,宝商科技有最新阿里云ECS镜像免费版本WordPress5.3

    WordPress LAMP: https://market.aliyun.com/products/53398003/cmjj033076.html

    WordPress WAMP: https://market.aliyun.com/products/53398003/cmjj033083.html

    0 0
添加回答
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

推荐文章
相似问题
推荐课程