本教程来讲霁ubuntu下安装drupal及配置apache和调整权限。Drupal在lamp上运行比较健壮,默认的是mysql数据库,不过Drupal也支持多种数据库。在ubuntu下apache的安装、配置、调整权限也是本教程的重点。
Drupal介绍:Drupal是使用PHP语言编写的开源内容管理框架(CMF),它由内容管理系统(CMS)和PHP开发框架(Framework)共同构成。连续多年荣获全球最佳CMS大奖,是基于PHP语言最著名的WEB应用程序。Drupal是在lamp(linux+apache+mysql+php)上的健壮的内容管理系统,默认的数据库是mysql,但是drupal也支持持PostgreSQL数据库,最近的ubuntu发行版在仓库中都包含了drupal6和drupal7,这也是ubuntu仅支持的两个drupal版本,在选择drupal版本时请注意!
LAMP 系统安装
使用其他方法安装lamp,请访问 Apache PHP MySQL (link is external)
简单方法安装lamp
最简易的方式是使用终端命令行安装整个lamp包,代码如下:
sudo tasksel install lamp-server
如果你的系统不支持tasksel命令,请安装,代码如下:
sudo apt-get install tasksel
我(可选)也推荐启用apache2的rewrite功能,它对drupal的很多模块和apache服务器的页面重定向很有帮助.
编辑文件 "/etc/apache2/sites-available/default" ,修改每一处的 "AllowOverride (link is external) none" 为 "AllowOverride (link is external) All", 然后执行:
sudo gedit /etc/apache2/sites-available/default
sudo a2enmod rewrite
sudo service apache2 restart
Drupal 安装
备注:下列两种安装方法是不兼容的,从ubuntu包(仓库中)和人工安装的目录是不同的,选择一种安装方式,不要尝试同时使用,不支持两种方式切换.
从ubuntu仓库中安装drupal包
你可以在ubuntu仓库中选择安装drupal6 或者drupal 7,如往常一样,仓库中的版本不是最新的,但是可以很容易的更新,代码如下:
sudo apt-get install drupal6
或者代码如下:
sudo apt-get install drupal7
允许 dbconfig-common 配置你的数据库,默认数据库:MySQL,然后,向apache注册drupal模块,代码如下:
sudo cp /etc/drupal/6/apache2.conf /etc/apache2/mods-enabled/drupal.conf
或者如下代码:
sudo cp /etc/drupal/7/apache2.conf /etc/apache2/mods-enabled/drupal.conf
最后,重启apache服务器,代码如下:
sudo service apache2 restart
手动安装drupal
以下步骤以drupal7系列中的drupal 7.25版本为例,它是写这篇文章时的最新版本(该步骤也通用drupal6),代码如下:
- wget http://ftp.drupal.org/files/projects/drupal-7.25.tar.gz (link is external)
- tar -xvzf drupal-7.25.tar.gz
- sudo mkdir /var/www/drupal
- //开源软件:Vevb.com
- sudo mv drupal-7.25/* drupal-7.25/.htaccess drupal-7.25/.gitignore /var/www/drupal
需要在drupal默认的站点安装目录下新建一个子文件夹,用来存放定制的logo,用户名和其他的你的新站点的媒体文件,代码如下:
sudo mkdir /var/www/drupal/sites/default/files
sudo chown www-data:www-data /var/www/drupal/sites/default/files
也需要为默认站点创建一个启动配置文件,代码如下:
- sudo cp /var/www/drupal/sites/default/default.settings.php /var/www/drupal/sites/default/settings.php
- sudo chown www-data:www-data /var/www/drupal/sites/default/settings.php
为Drupal手工配置mysql数据库
你需要为drupal创建一个数据库用来导入drupal的数据库表,可以通过phpmyadmin或者命令行创建该数据库,代码如下:
mysqladmin -u root -p create drupal
为drupal创建一个名为drupal的数据库,当然,你可以自定义该数据库名,代码如下:
- mysql -u root -p
- mysql> GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES ON drupal.* TO 'drupaluser'@'localhost' IDENTIFIED BY 'drupalpass';
你肯定不想drupal使用root账号连接数据库,上面命令创建了一个拥有一定权限的不同于mysql root的数据库用户:drupaluser,drupalpass,你可以使用其他用户名和密码来替换drupaluser和drupalpass,如果命令成功激活新的权限,代码如下:
mysql> FLUSH PRIVILEGES;
退出mysql命令:mysql> q
为drupal配置 PostgreSQL 数据库
编辑 /var/www/drupal/sites/default/settings.php 文件,指定drupal使用的用户名,密码和数据库,代码如下:
- sudo gedit /var/www/drupal/sites/default/settings.php
- * Database URL format:
- $db_url = 'pgsql://username:password@localhost (link sends e-mail)/databasename';
- where username = drupaluser password = drupaluserpass databasename = drupaldb
重启 Apache,最后重启Apache2.代码如下:
sudo service apache2 restart
使用浏览器完成drupal的最终安装,最后,在浏览器里输入 http://localhost/drupal/install.php (link is external) (或者可能是 http://localhost/drupal6/install.php (link is external) 或者 http://localhost/drupal7/install.php (link is external) 如果安装使用的是官方仓库),创建一个账号,登陆,按照安装指示连接数据库,然后配置你的站点 ,第一个账号将会自动的成为拥有所有权限的主要管理账户
安装Drupal 7 的特殊问题
当你在本地安装drupal 7 的时候,可能会遇到关于“模块” “主题” 和 “邮件认证”的特殊问题.
安装新模块
当安装一个新的模块的时候,可能会遇到下列错误:
"WARNING: You are not using an encrypted connection, so your password will be sent in plain text. Learn more."
"To continue, provide your server connection details"
该警告提示有点儿误导,错误是有服务器的目录写权限引起的.
写权限:如果你不担心安全问题,最快的解决方式是更改写权限,当apache的用户是 www-data,apache默认的,ngnix也是默认的,代码如下:
sudo chown www-data:www-data -R /var/www/drupal/sites
命令行:安全的解决方式是通过ssh的命令行方式解决,慢但是更安全,例如:安装Wysiwyg 代码如下:
- wget http://ftp.drupal.org/files/projects/wysiwyg-7.x-2.1.tar.gz (link is external)
- tar -xvzf wysiwyg-7.x-2.1.tar.gz
- sudo mkdir -p /var/www/drupal/sites/all/modules/wysiwyg
- sudo mv wysiwyg/* /var/www/drupal/sites/all/modules/wysiwyg
Wysiwvg 需要客户方的编辑器,CKEditor 运行以下:
- wget http://download.cksource.com/CKEditor/CKEditor/CKEditor%203.6.1/ckeditor... (link is external)
- tar -xvzf ckeditor_3.6.1.tar.gz
- sudo mkdir -p /var/www/drupal/sites/all/libraries/ckeditor
- sudo mv ckeditor/* /var/www/drupal/sites/all/libraries/ckeditor
调整php内存限制
你应该增加默认的php内存限制值,内存值用来支持运行脚本,默认的8M是不够的,使用96M或者160M,如果你想使用图形界面,尽管基本的32m足够了,在drupal6的较新版本中,简单的你可以编辑settiings.php文件增加下列值:
ini_set('memory_limit', '96M');
新闻热点
疑难解答