ubuntu搭建Apache+PHP+MySQL

第一阶段 : 搭建Apache2+PHP+MySQL

安装mysql

sudo apt-get install mysql-server mysql-client

启动mysql服务

sudo service mysql start

安装apache2

sudo apt-get install apache2

让apache支持mysql

sudo apt-get install libapache2-mod-auth-mysql

安装php5

sudo apt-get install php5

让php支持mysql

sudo apt-get install php5-mysql

本地编辑项目(phpstorm)

sudo apt-get install php5-cgi

重启服务器apache2

sudo /etc/init.d/apache2 restart

sudo service apache2 restart (推荐使用)

以下为Apache的目录结构

/etc/apache2/

|– apache2.conf

|      `–  ports.conf

|– mods-enabled

|      |– *.load

|      `– *.conf

|– conf-enabled

|      `– *.conf

`– sites-enabled

`– *.conf

目录结构

path -> /etc/apache2/apache2.conf

注意:不要在apache2定义ServerName it为全局变量

虚拟主机配置目录结构和目录结构有关联

samego path

<VirtualHost *:80>

ServerAdmin webmaster@samego.com

ServerName samego.com

DocumentRoot /home/www/samego

ErrorLog ${APACHE_LOG_DIR}/error.log

CustomLog ${APACHE_LOG_DIR}/access.log combined

</VirtualHost>

详细说明

ServerName   (设定虚拟主机的名称)

DocumentRoot  (指定虚拟主机的网站主目录)

ServerAlias  (设定虚拟主机的別名)

ErrorLog    (虚拟主机发生错误时要记录在哪个目录,可不设)

第二阶段 : 更改apache的项目存放路径 and 处理多域名(二级域名)

stept-one 更改hosts文件

sudo vi /etc/hosts

增加如下几行

127.0.0.1  samego.com

127.0.0.1  blog.samego.com

{server_ip} samego.com

{server_ip} blog.samego.com

stept-two : 增加重写映射模块

cd /etc/apache2/mods-enabled/

sudo vi alias.load

默认已经开启LoadModule alias_module /usr/lib/apache2/modules/mod_alias.so(文件里面只有该行内容)

在最后添加如下一行

alic 重写映射

LoadModule rewrite_module /usr/lib/apache2/modules/mod_rewrite.so

stept-three : 更改项目的文件根目录路径

cd /etc/apache2

sudo vi apache2.conf

(即:sudo vi /etc/apache2/apache2.conf)

可以将里面所有的删掉 注释一个留作模板即可方便修改

修改后的内容如下

samego Director

Options Indexes FollowSymLinks

AllowOverride All

Require all granted

blog Directoer

Options Indexes FollowSymLinks

AllowOverride All

Require all granted

注意:原来AllowOverride默认是为None的

从上可以看出,我们的项目放在/home/www/下面

因此在修改后我们需要在/home/下建立www这样的workSpace

在里面在建立其他所需要的module

mkdir /home/www

mkdir /home/www/blog

mkdir /home/www/samego

step-four : 更改云服务的虚拟主机即VirtualHost 类似于(step-three)

将多余的删除 留一个作为参考的模块即可

cd /etc/apache2/sites-enabled

sudo vi 000-default.conf

(sudo vi /etc/apache2/sites-enabled/000-default.conf)

里面有很详细的说明

修改后如下

samego path

ServerAdmin webmaster@samego.com

ServerName samego.com

DocumentRoot /home/www/samego

ErrorLog ${APACHE_LOG_DIR}/error.log

CustomLog ${APACHE_LOG_DIR}/access.log combined

blog path

ServerAdmin wesbmaster@blog.samego.com

ServerName blog.samego.com

DocumentRoot /home/www/blog

ErrorLog ${APACHE_LOG_DIR}/error.log

CustomLog ${APACHE_LOG_DIR}/access.log combined

最后这一步也很重要 重启Apache2服务器

sudo service apache2 restart

第三阶段 : 让MySQL开启远程连接

注意:没有开启的话连接数据库报错:2003-can’t connect to MYSQL

step-one 登陆数据库

确保Linux系统已经安装上了MySQL数据库。

mysql -u root -p

step-two 创建远程连接的用户

GRANT ALL PRIVILEGES ON *.* TO ‘samego’@’%’ IDENTIFIED BY ‘samego’ WITH GRANT OPTION;

为了直接看清楚翻译如下:

grant all privileges on *.* to ‘samego’@’%’ identified by ‘samego’ with grant option;

注意:第一个samego表示用户名,%表示所有的ip都可以连接,也可以设置某个ip地址运行连接,第二个samego表示密码)

step-three 命令立即生效

flush privileges;

step-four 查询数据库系统的用户

SELECT DISTINCT CONCAT(‘User: ”’,user,”’@”’,host,”’;’) AS query FROM mysql.user;

step-five 命令退出MySQL

exit;

step-six 更改bind-address

sudo vi /etc/mysql/my.cnf

将bind-address = 127.0.0.1

设置成bind-address = 0.0.0.0(设备地址)

重新启动(命令如下):

sudo /etc/init.d/mysql restart

sudo service mysql restart(推荐)

step-seven 查看端口号

show global variables like ‘port’;

第四阶段 管理服务器的文件(推荐使用芒果云KODExplorer)

To-KODExplorer

首先-从芒果云官网获取最新版的下载链接

然后-登陆服务器 执行命令 wget http://……

再然后放到相应的目录进行解压

最后-登陆芒果云之前得该它权限 执行此命令 sudo chmod -R 777 ./*

初始账户密码都为admin

注意:尽量不要自动更新,即使有提示,否则有bug

————KODExplorer is ok—————

To-vsftp 在云服务器配置FTP服务说明来自腾讯云

http://www.qcloud.com/wiki/%E4%B8%8A%E4%BC%A0%E6%96%87%E4%BB%B6%E5%88%B0Linux%E4%BA%91%E6%9C%8D%E5%8A%A1%E5%99%A8

other软连设置依赖文件 – 可以不理

RewriteEngine on RewriteMap lowercase int:tolower

RewriteMap vhost txt:/etc/apache2/vhost.map

RewriteCond RewriteCond %{HTTP_HOST}^[a-zA-Z0-9]+.samego.com$

RewriteCond ${vhost:%1} ^(/.)$

RewriteRule ^/(.)$ %1/$1

可以看出需要创建vhost.map

content is next :

www.####.com /home/www/samego

blog.####.com /home/www/blog

搭建 Nginx+PHP+MySQL 腾讯云有教程

http://www.qcloud.com/wiki/Ubuntu%E7%8E%AF%E5%A2%83%E4%B8%8B%E9%80%9A%E8%BF%87Apt-get%E5%AE%89%E8%A3%85%E8%BD%AF%E4%BB%B6

点赞