This page will describe the steps you have to take to install LAMP, which stands for Linux Apache MariaDB PHP. This page will show you, how to set up a working Apache2 webserver, a configured MariaDB database server, to install PHP5, working with Apache, and finally, phpMyAdmin with a configured pmadb database.

This article is updated to reflect the installation in openSUSE 13.1. However it it does not deviate much from lower versions of openSUSE.

Getting root access

Every time you want to change anything to the system, you will need root access. You can get this by:

  • Open a command line program (konsole is the standard one).
  • Type
    su -

The console will now ask you for the password you selected at the installation, enter that password and press enter again. If you logged in successfully, the user name and the computer name should be displayed in red now.


Setting up Apache2

Installing Apache2

To install software, make sure that you have root access. We will install our software using YaST from the command line.

  • Open a console.
  • To install apache, we use the command
    yast -i apache2

    or

    zypper in apache2

    .

This also installs the packet apache2-example-pages, which provides an example page when accessing the web server.

Starting Apache2

To start Apache, execute

systemctl start apache2.service

Note: If you ever want to restart apache, execute

systemctl restart apache2.service

or if you want to stop it

systemctl stop apache2.service

This does not start the apache server after a reboot. To enable that, give the command

systemctl enable apache2.service

Testing the installation

Now that you have installed apache2, you want to check if it works. The packet apache2-example-pages installed the file /srv/www/htdocs/index.html, which contains:

<html><body><h1>It works!</h1></body></html>

Note: You can create a new file and edit it by using your favorite editor.

You can now start your favorite browser. Navigate to 'localhost'. You should see 'It works!'.

Enabling public access to the web server

In this state the web server is only accessible as localhost. You have to open port http (=80) in the firewall. You can do that using YaST, selecting Security and Users --> Firewall --> Allowed services and add HTTP server. You may also edit the line with FW_CONFIGURATIONS_EXT= in it in the file /etc/sysconfig/SuSEfirewall2 and add apache2 in that line. A space is used in that line to separate elements. After editing you have to restart the firewall using:

systemctl restart SuSEfirewall2.service

Setting up PHP5

Installing PHP5

To install software, you need root access. When you have root access, execute

yast -i php5 php5-mysql apache2-mod_php5

or

zypper in php5 php5-mysql apache2-mod_php5

Don't forget to enable mod-php by executing

a2enmod php5

Now you have installed PHP5.

Restarting the webserver

Now that you have installed PHP5, you have to restart the apache2 webserver to get some results. You can restart apache by executing

systemctl restart apache2.service

with root access.

Testing the installation

That was pretty easy, but now you want to test it out, don't you? So, we go to the htdocs folder again by executing

cd /srv/www/htdocs

Make a new file named index.php and with the following content:

<?php echo "<h1>You succesfully installed PHP5!</h>" ?>

Now, open your favorite browser again and navigate to 'localhost/index.php'. If everything went alright then you should see 'You successfully installed PHP5!'.

Setting up MariaDB

Installing MariaDB

We need to install mariadb and mariadb-tools, mariadb-tools is necessary for the administration, execute

yast -i mariadb mariadb-tools

or

zypper in mariadb mariadb-tools

with root access.

Starting the MariaDB server

MariaDB is an alternative package for MySQL, so further on the name mysql is used.

To start the MariaDB server, execute

systemctl start mysql.service

You may want to read the messages issued by the server in /var/log/messages.

Note: If you ever want to restart mysql, execute

systemctl restart mysql.service

or if you want to stop it

systemctl stop mysql.service

This does not start the mysql server after a reboot. To enable that, give the command

systemctl enable mysql.service

Configuring the MariaDB/MySql server

To set the root password for the first time:

  • Execute

    mysqladmin -u root password NEWPASSWORD
    • If you want to set the password to root123, type

      mysqladmin -u root password root123

If you ever want to change your password later:

  • Type

    mysqladmin -u root -p password NEWPASSWORD
  • Your old password will be asked.

Logging in to the client

Now you can log in into the server client by executing

mysql -u root -p

Enter

exit

to go back to the terminal.

Installing phpMyAdmin

What is phpMyAdmin?

phpMyAdmin, or pma is a tool to administrate your databases. The installation process is quite easy.

Installing phpMyAdmin

Install phpMyAdmin by executing

yast -i phpMyAdmin

or

zypper in phpMyAdmin

This also installs a number of needed php5 modules and restarts the apache2 server.

Logging into phpMyAdmin

To log in to phpMyAdmin:

  • Navigate to localhost/phpMyAdmin
  • Enter the root username and the root password of your mysql server
  • Click on the 'go' button

Configuring phpMyAdmin

To configure phpMyAdmin, we need to edit the configuration file. It is found in /etc/phpMyAdmin/config.inc.php.

  • Open the file and change corresponding lines to (note the double underscore in the names of the tables):
$cfg['Servers'][$i]['controluser'] = 'somename';
$cfg['Servers'][$i]['controlpass'] = 'somepassword';
/*Advanced phpMyAdmin features */
$cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';
$cfg['Servers'][$i]['bookmarktable'] = 'pma__bookmark';
$cfg['Servers'][$i]['relation'] = 'pma__relation';
$cfg['Servers'][$i]['table_info'] = 'pma__table_info';
$cfg['Servers'][$i]['table_coords'] = 'pma__table_coords';
$cfg['Servers'][$i]['pdf_pages'] = 'pma__pdf_pages';
$cfg['Servers'][$i]['column_info'] = 'pma__column_info';
$cfg['Servers'][$i]['history'] = 'pma__history';
$cfg['Servers'][$i]['tracking'] = 'pma__tracking';
$cfg['Servers'][$i]['designer_coords'] = 'pma__designer_coords';
  • You will need to change the user name of controluser to the name of a new account (above somename) and controlpass (above somepassword) to it's password.
  • Change the protection of this file so it is owned by root and only readable by group www.
    chown root:www /etc/phpMyAdmin/config.inc.php
    chmod 640 /etc/phpMyAdmin/config.inc.php
  • Log in to localhost/phpMyAdmin again.
  • Import via the Import tab on the phpMyAdmin page the file /usr/share/doc/packages/phpMyAdmin/example/create_tables.sql There is a comment telling you that a user pma should be present already, however this is not necessary.
  • Log in and out again using user name root and the root password of MySQL.
  • Select the tab Users and press Add user. Enter as new user name the name of controluser chosen above, localhost as host, twice the above chosen password in the corresponding fields and press Go (below right).
  • Create a file with the following content, where somename and somepassword are replaced by the above chosen values.
GRANT USAGE ON mysql.* TO 'somename'@'localhost' IDENTIFIED BY 'somepassword';
GRANT SELECT (
Host, User, Select_priv, Insert_priv, Update_priv, Delete_priv,
Create_priv, Drop_priv, Reload_priv, Shutdown_priv, Process_priv,
File_priv, Grant_priv, References_priv, Index_priv, Alter_priv,
Show_db_priv, Super_priv, Create_tmp_table_priv, Lock_tables_priv,
Execute_priv, Repl_slave_priv, Repl_client_priv
) ON mysql.user TO 'somename'@'localhost';
GRANT SELECT (Host, Db, User, Table_name, Table_priv, Column_priv)
ON mysql.tables_priv TO 'pmagebruiker'@'localhost';
GRANT SELECT ON mysql.db TO 'somename'@'localhost';
GRANT SELECT, INSERT, UPDATE, DELETE ON phpmyadmin.* TO 'somename'@'localhost';

and import that file via the Import tab.

  • Read the documentation on phpMyAdmin on the phpMyAdmin website.
  • Do not forget to take the necessary security measures.
  • You should have a working LAMP server now!

==================================================================

https://en.opensuse.org/SDB:LAMP_setup

https://en.opensuse.org/SDB:Linux_Apache_MySQL_PHP

http://os.51cto.com/art/201203/323578.htm

http://www.unixmen.com/install-lamp-server-apache-mariadb-php-opensuse-13-213-1/

http://ben-it.org/content/open-suse-123-install-lamp-server

Suse LAMP setup的更多相关文章

  1. Ubuntu 16.04 LAMP server tutorial with Apache 2.4, PHP 7 and MariaDB (instead of MySQL)

    https://www.howtoforge.com/tutorial/install-apache-with-php-and-mysql-on-ubuntu-16-04-lamp/ This tut ...

  2. openSUSE 安装LAMP记录

    按照 openSUSE SDB:LAMP setup安装好了LAMP.运行的大多数命令都是来自与openSUSE SDB:LAMP setup中. 本页面描述如何安装LAMP,这是 Linux Apa ...

  3. How To Install Development Tools In Linux

      In this brief tutorial, we will be discussing how to install development tools in popular Linux di ...

  4. How to install cacti on centos 6

    Cacti – Network and performance monitoring tool   Cacti is one of best monitoring tool used to monit ...

  5. 用于 ‘Suse‘ Linux 包管理的 Zypper 命令大全

    SUSE( Software and System Entwicklung,即软件和系统开发.其中‘entwicklung‘是德语,意为开发)Linux 是由 Novell 公司在 Linux 内核基 ...

  6. suse最小化安装

    Open suse 图形安装 用虚拟机vmware70 或者是Oracle VM VirtualBox安装 .镜像文件就是SLED-10-x86_64-DVD1 根据虚拟机设置吧镜像文件装入虚拟机中 ...

  7. 7. LAMP环境搭建

    一.准备工作 1.安装编译工具gcc.gcc-c++ 注意解决依赖关系,推荐使用yum安装,若不能联网可使用安装光盘做为yum源-- 1)编辑yum配置文件: # mount /dev/cdrom / ...

  8. lamp php的ssl,ssh支持

    Php支持ssl,ssh扩展: 准备:可以成功解析php 1.curl的安装 [root@localhost~]# cd /usr/local/src/ [root@localhost~]# wget ...

  9. 【Mail】搭建邮件服务器(LAMP+Postfix+Dovcot+PostfixAdmin+Roundcubemail)

    大纲 一.mail部署说明 二.安装准备 三.LMAP环境配置 四.配置postfixadmin 五.配置postfix 六.配置dovecot 七.测试SMTP和POP3服务 八.配置Roundcu ...

随机推荐

  1. html5在手机熄屏后倒计时会出现延迟情况

    今天开发了一个手机端的倒计时,然后同事说出现了Bug,怎么回事呢?Bug很简单,就是在手机返回主界面或者熄屏后倒计时会暂停在熄屏前的时间(注意时间是页面加载时获取的服务器的时间),问题很简单,知道问题 ...

  2. RabbitMQ 很成熟 不是阿里的

    简介 官网 http://www.rabbitmq.com RabbitMQ是一个由erlang开发的AMQP(Advanced Message Queue )的开源实现 RabbitMQ实现了AMQ ...

  3. 根据word模版导入word中用户填写的数据

    背景 客户有个需求:从word格式文档中读项目关键信息到数据库中,如:第一个表格中的联系人,项目名之类的信息,word中的格式不是固定的,可以会有些改动. 分析 方案1:读取第一个表格,然后再读取表格 ...

  4. 关于ASP.NET MVC+Repository+Service架构的一些思考

    看了一些ASP.NET MVC开源项目后的一些想法,关于ASP.NET MVC+Repository+Service架构的一些思考 最近在学习ASP.NET MVC 2.0的一些开源项目,发现这些项目 ...

  5. step5: 编写spider爬取

    改写parse函数 实现功能: 1.获取文章列表页中的文章url并交给scrapy下载后,交给解析函数进行具体字段的解析2.获取下一页的url并交给scrapy进行下载,下载完成后交给parse 提取 ...

  6. Js 合并 table 行 的实现方法

    Js 合并 table 行 的实现方法 需求如下: 某公司的员工档案,如下,  经理看员工的信息不是很清晰: 姓名 所在学校 毕业时间 张三 小学 2000 张三 中学 2006 张三 大学 2010 ...

  7. Magento 2中文手册教程 - 如何获得 Magento 2

    Magento 2 安装 我们搜集了一些信息来帮助您开始使用Magento 2和你的Magento 2安装. 我们有一些资源帮助您开始使用Magento 2. 如何获得 Magento 2 参考下表开 ...

  8. 从代码层读懂 Java HashMap 的实现原理

    概述 Hashmap继承于AbstractMap,实现了Map.Cloneable.Java.io.Serializable接口.它的key.value都可以为null,映射不是有序的.Hashmap ...

  9. Java - 用builder代替构造器

    静态工厂和够构造器有一个共同的局限性:遇到大量的参数时无法很好的扩展. 先说说构造器. 其实field不多时重叠构造器(telescoping constructor)是个不错的方法,易于编写也易于调 ...

  10. Java API 之 Annotation功能

    JDK1.5开始增加了Annotation功能,该功能可用于: 1.类: 2.构造方法: 3.成员变量: 4.方法 5.参数 等的声明: 该功能并不影响程序的运行,但是会对编译器警告等辅助工具产生影响 ...