按照 openSUSE SDB:LAMP setup安装好了LAMP。运行的大多数命令都是来自与openSUSE SDB:LAMP setup中。

本页面描述如何安装LAMP,这是 Linux Apache MariaDB PHP. 为了这个目的,你需要安装:

  • 一个运行的Apache2 web服务
  • 一个已经配置好的MariaDB数据库服务
  • PHP5和Apahce2一起运行;并且完美
  • phpMyAdmin和一个已经配置好的pmadb数据库

整个安装需要的时间大概是20分钟,但这可能依赖你的网络连接情况。

安装apache2

第一,确保你有root权限和输入以下代码:

zypper in apache2

启动apache2

systemctl start apache2

如果你想重启apache,使用:

systemctl restart apache2

或者你想停止它,使用:

systemctl stop apache2

为了系统重启后自动启动apache服务

systemctl enable apache2

测试安装

为了检查你的apache2服务是否工作,使用你喜欢的文本编辑器在/srv/www/htdocs/文件夹中创建一个文件index.html文件写入以下内容:

<html><body><h1>Welcome to my web site!</h1></body></html>

现在使用你喜欢的浏览器,输入localhost,你应该可以看到一个页面中和大字标题 Welcome to my web site!

启用web服务可以外部访问

在目前的状态,web服务只允许使用localhost访问。如果你想允许它使用一个远程主机名(host)访问,你需要在防火墙中开启http(80)端口。这样做,编辑/etc/sysconfig/SuSEfirewall2文件和修改以下行

FW_CONFIGURATION_EXT=""

FW_CONFIGURATION_EXT="apache2"
在这一行,应该使用空格隔开每个元素,如防火墙开放 apache,mysql,配置就会变为FW_CONFIGURATIONS_EXT="apache2 mysql"

在编辑完之后,你需要重启防火墙使用:

systemctl restart SuSEfirewall2
当然,你可以通过YaST来做这件事,然后选择 安全和用户 --> 防火墙 --> 允许的服务 和添加 Http 服务

安装PHP

安装PHP7

确保你有root权限 -- 看下面,安装php7使用:

zypper in php7 php7-mysql apache2-mod_php7

别忘记启用mod-php通过运行:

a2enmod php7

你已经完成了,php7现在已经安装了。

安装PHP5

如果使用安装PHP5,步骤差不多和上面一样,使用"php5"代替"php7"

zypper in php5 php5-mysql apache2-mod_php5
a2enmod php5

注意你需要选择安装php5还是php7,你不能同时安装它们。

重启web服务器

现在你已经安装好了php,你需要重启你的apache2 web服务器:

systemctl restart apache2

测试安装

为了验证php是已经在运行,在/srv/www/htdocs/文件夹中创建一个index.php文件并写入以下内容:

<?php
phpinfo();
?>

现在,使用你的浏览器浏览localhost,你应该可以看到一个页面包含一个表格显示所有的PHP设置

安装 MariaDB

MariaDB 是一个MySQL的代替品,而且也是使用mysql名称.

安装 Installing MariaDB

确保你有root权限 -- 同上。我们需要安装mariadbmariadb-tools

zypper in mariadb mariadb-tools
mariadb-tools 是MariaDB的管理工具集

启动MariaDB服务

启动MariaDB服务,运行:

systemctl start mysql

如果你想在服务器上面看发布消息,cat /var/log/messages.

cat /var/log/messages

确认这个服务能够在每次启动时自动启动:

systemctl enable mysql

如果你想重启mysql,运行:

systemctl restart mysql

或者你想停止它,运行:

systemctl stop mysql

配置 MariaDB/MySql 服务

和 Leap 42.1

通过配置MariaDB 服务提高安全性,请使用openSUSE提供的脚本mysql_secure_installation.后面的描述全过程

root # mysql_secure_installation
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY! In order to log into MariaDB to secure it, we'll need the current password for the root user. If you've just installed MariaDB, and you haven't set the root password yet, the password will be blank, so you should just press enter here.
Enter current password for root (enter for none):

这里尽管按回车(Enter)键.

root #
... (output sequel of previous command)
OK, successfully used password, moving on... Setting the root password ensures that nobody can log into the MariaDB root user without the proper authorisation.
Set root password? [Y/n] y

这里尽管输入y.

root #
... (output sequel of previous command)
New password:

现在输入给root用户的密码

root #
... (output sequel of previous command)
Re-enter new password:

输入确认密码

root #
... (output sequel of previous command)
Password updated successfully! Reloading privilege tables.. ... Success! By default, a MariaDB installation has an anonymous user, allowing anyone to log into MariaDB 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.
Remove anonymous users? [Y/n]

回答y来移除匿名用户。

root #
... (output sequel of previous command)
... Success! Normally, root should only be allowed to connect from 'localhost'. This ensures that someone cannot guess at the root password from the network.
Disallow root login remotely? [Y/n]

现在回复y

root #
... (output sequel of previous command)
... Success! By default, MariaDB comes with a database named 'test' that anyone can access. This is also intended only for testing, and should be removed before moving into a production environment.
Remove test database and access to it? [Y/n]

回复y

root #
... (output sequel of previous command)
- Dropping test database... ... Success! - Removing privileges on test database... ... Success! Reloading the privilege tables will ensure that all changes made so far will take effect immediately.
Reload privilege tables now? [Y/n]

回复 y

最后可能会输出:

 ... Success!

Cleaning up...

All done!  If you've completed all of the above steps, your MariaDB
installation should now be secure. Thanks for using MariaDB!

在过去的旧版本中

替换<NEW PASSWORD>的值为你想定义的一个新密码,运行:

mysqladmin -u root password '<NEW PASSWORD>'

输入目前的密码或密码从没有定义只需要按回车(Enter)

在客户端登录

现在你可以在服务器客户端中登录通过运行:

root # mysql -u root -p
Enter password:

然后输入你的密码

root #
... (output sequel of previous command)
Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is Server version: 10.0.-MariaDB openSUSE package Copyright (c) , , Oracle, MariaDB Corporation Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>

可以通过运行exit;回到终端.

安装 phpMyAdmin

什么是phpMyAdmin

phpMyAdmin -- a.k.a pma -- 是一个通过网站页面来管理你数据库的工具。

安装phpMyAdmin

安装phpMyAdmin,运行:

zypper in phpMyAdmin

这当然会安装一些依赖的php5模块和重启apache2服务。

登录到phpMyAdmin

为了登录到phpMyAdmin:

  • 指向到localhost/phpMyAdmin
  • 输入你mysql服务的用户名root和root用户的密码
  • 点击'go'按钮
当然你会获取到一个错误消息说缺少Multibytes String(mbstring)扩展。这个是下一章节的主题。

检查phpMyAdmin

现在你可以通过你的浏览器浏览http://localhost/phpMyAdmin/http://ip_address/phpMyAdmin/并输入mysql root的用户名和他的密码。

就是这些!你现在可以通过一个网站页面来管理你的数据库了。

你可以阅读phpMyAdmin的文档在phpMyAdmin website

你现在应该有个在运行的LAMP服务了。

另外补充安装php扩展部分

安装php7的扩展

sudo zypper in php7-bcmath php7-opcache php7-bz2 php7-calendar php7-ctype php7-curl php7-dom php7-ftp php7-gd php7-gettext php7-gmp php7-iconv php7-imap php7-ldap php7-mbstring php7-mcrypt php7-odbc php7-openssl php7-pcntl php7-pgsql php7-posix php7-shmop php7-snmp php7-soap php7-sockets php7-sqlite php7-sysvsem php7-tokenizer php7-wddx php7-xmlrpc php7-xsl php7-zlib php7-exif php7-fastcgi php7-pear php7-sysvmsg php7-sysvshm php7-zip

如果你想安装php5的扩张,运行的命令和上面一样,把"php7"替换为"php5",运行:

sudo zypper in php5-bcmath php5-opcache php5-bz2 php5-calendar php5-ctype php5-curl php5-dom php5-ftp php5-gd php5-gettext php5-gmp php5-iconv php5-imap php5-ldap php5-mbstring php5-mcrypt php5-odbc php5-openssl php5-pcntl php5-pgsql php5-posix php5-shmop php5-snmp php5-soap php5-sockets php5-sqlite php5-sysvsem php5-tokenizer php5-wddx php5-xmlrpc php5-xsl php5-zlib php5-exif php5-fastcgi php5-pear php5-sysvmsg php5-sysvshm php5-zip

安装完之后,别忘记重启apache2 web服务。

sudo systemctl restart apache2

安装mysql

sudo zypper in mysql-community-server mysql-community-server-client mysql-community-server-tools mysql-connector-java mysql-workbench

参考:

  1. SDB:LAMP setup本文的英文原文

  2. openSUSE之PHP学习之旅(1、环境配置) 学习了如何安装php模块
  3. 19. LAMP和LNMP服务器部署

openSUSE 安装LAMP记录的更多相关文章

  1. opensuse安装pycurl失败记录

    早上在opensuse安装pycurl,一直出现如下错误: pepper@VM_56_243_suse:~/code/gitosis-autotest> pip install pycurl C ...

  2. Linux安装LAMP开发环境及配置文件管理

    Linux主要分为两大系发行版,分别是RedHat和Debian,lamp环境的安装和配置也会有所不同,所以分别以CentOS 7.1和Ubuntu 14.04做为主机(L) Linux下安装软件,最 ...

  3. CentOS使用yum源中自带的rpm包安装LAMP环境

    CentOS使用yum源中自带的rpm包安装LAMP环境.这是Linux下安装LAMP的环境一种最基本最简便的方式.新手可以从容安装使用. 1. 安装基础包(可选安装)yum install -y w ...

  4. CentOS6.3 编译安装LAMP(2):编译安装 Apache2.2.25

    所需源码包: /usr/local/src/Apache-2.2.25/httpd-2.2.25.tar.gz 编译安装 Apache2.2.25 #切换到源码目录 cd /usr/local/src ...

  5. 将php网站移到CentOS 6.7上[一]:yum安装lamp环境

    最近应老师要求,将一个网站从51php上转移到学校提供的服务器上,之前对Linux没有了解,一切都在百度百度百度.于是发现很多步骤自己做过后就忘了,现将有效步骤记录下来,以供下次参考. 原51php上 ...

  6. CentOS 7 / RHEL 7 上安装 LAMP + phpMyAdmin

    原文 CentOS 7 / RHEL 7 上安装 LAMP + phpMyAdmin 发表于 2014-11-02 作者 Haoxian Zeng 更新于 2014-12-12   之前根据在 Lin ...

  7. openSUSE 安装

    https://lug.ustc.edu.cn/sites/opensuse-guide/installation.php 开始 1. 简介2. 改用 GNU/Linux3. 获取 openSUSE4 ...

  8. CentOS 7.4 yum安装LAMP环境

    配置防火墙,开启80.3306端口.CentOS 7.0默认使用的是firewall作为防火墙,这里改为iptables防火墙. #停止firewall服务 systemctl stop firewa ...

  9. linux centos 宝塔主机控制面板安装和安全狗安装过程记录

    linux 宝塔控制面板 安装过程yum install -y wget && wget -O install.sh http://103.224.251.79:5880/instal ...

随机推荐

  1. hdu多校第七场 1011 (hdu6656) Kejin Player 概率dp

    题意: 一个游戏,有许多关,到下一关要花费金钱,做出尝试,有概率成功,若成功则到达下一关,若失败则停在此关或退回到前面某关,询问第l关到第r关的期望费用 题解: 显然,第r关到第l关的费用是dp[r] ...

  2. Java--用键盘控制小球

    package secondpack; import java.awt.*; import java.awt.event.*; public class MyBall { public static ...

  3. D.Country Meow 最小球覆盖 三分套三分套三分 && 模拟退火

    // 2019.10.3 // 练习题:2018 ICPC 南京现场赛 D Country Meow 题目大意 给定空间内 N 个点,求某个点到 N 个点的距离最大值的最小值.   思路 非常裸的最小 ...

  4. Python服务端工程师就业面试指导✍✍✍

    Python服务端工程师就业面试指导  整个课程都看完了,这个课程的分享可以往下看,下面有链接,之前做java开发也做了一些年头,也分享下自己看这个视频的感受,单论单个知识点课程本身没问题,大家看的时 ...

  5. Cookie自动管理

    如果想要对 cookies 干点什么就需要 HTTP Cookie 管理器了. 啥是 cookies 呢.储存在用户本地终端上的数据通常情况下,当用户结束浏览器会话 时,系统将终止所有的 Cookie ...

  6. Django form组件 与 cookie/session

    目录 一.form组件 二.cookie.session 返回Django 组件 一.form组件 1.1 以注册功能为例 注册功能 1.渲染前端标签获取用户输入 --> 渲染标签 2.获取用户 ...

  7. Windows7 打开word2003提示:向程序发送命令时出现错误 解决方案

    1.关闭所有打开的Word文档:(包括任务管理器里的进程)2.复制这条命令:%appdata%\microsoft\templates3.开始 → 运行 → 粘贴上面复制的命令 → 确定4.在打开的目 ...

  8. BZOJ2152 聪明可可 点分治

    题意传送门 思路:基本的点分治思路,num数组记录从u点开始路径长度分别为1或者2或者3的路径长度(取模3意义下),然后做一个简单的容斥就好了. 为了避免计数的麻烦,<u,u>这样的点单独 ...

  9. MySQL sql_mode 说明(及处理一起sql_mode引发的问题)

    转自:https://segmentfault.com/a/1190000005936172 1. MySQL 莫名变成了 Strict SQL Mode 最近测试组那边反应数据库部分写入失败,app ...

  10. truncate、delete、drop

    相同点: 1.三者共同点: truncate.不带where字句的delete.drop都会删除表内的数据 2.drop.truncate的共同点: drop.truncate都得DDL语句(数据库定 ...