归档:OpenSUSE:Connect 安装

跳转到:导航搜索
Connect 已于 2021 年关闭。

此页面解释了如何设置 openSUSE:Connect 应用程序。

安装 LAMP 堆栈

  • 通过在 YaST 中选择 Web 和 LAMP 服务器模式 + 添加 mysql-community-server 包来实现
  • 或者运行
zypper install -t pattern lamp_server
zypper install mysql-community-server php5-pecl_http php5-mbstring

(php5-pecl_http 可从 server:php:extensions 获取)

检出源代码

git clone git://gitorious.org/opensuse/connect.git

Apache 设置

  • 启用 mod_rewrite
    • 打开 /etc/sysconfig/apache2,找到类似于 APACHE_MODULES="..." 的行,并将 rewrite 添加到列表中
    • 或者使用 YaST 启用它
  • 创建一个虚拟主机 (/etc/apache2/vhosts.d/elgg.conf) 指向您的 connect 检出目录,如下所示(将 /srv/www/vhosts/opensuse.org/connect 替换为 Elgg 的完整路径)
 <VirtualHost *:80>
  ServerName localconnect
  DocumentRoot /srv/www/vhosts/opensuse.org/connect
  <Location />
      Allow from All
  </Location>
  <Directory /srv/www/vhosts/opensuse.org/connect>
      AllowOverride All
  </Directory>
 </VirtualHost>
  • 将服务器名称添加到 /etc/hosts
$ echo 127.0.0.50 localconnect >>/etc/hosts

lighttpd 设置

  • 打开您的终端并输入 sudo zypper install lighttpd
  • 打开 /etc/lighttpd/lighttpd.conf
  • mod_rewrite 放入 server.modules
  • 将以下代码附加到文件末尾(将 /srv/www/vhosts/opensuse.org/connect 替换为 Connect 源代码的完整路径)
$HTTP["host"] == "localconnect" {
    server.document-root = "/srv/www/vhosts/opensuse.org/connect"
    url.rewrite = (
        "^/action/([A-Za-z0-9\_\-\/]+)\?(.+)" => "/engine/handlers/action_handler.php?action=$1&$2",
        "^/action/([A-Za-z0-9\_\-\/]+)" => "/engine/handlers/action_handler.php?action=$1",
        "^/services/api/([A-Za-z0-9\_\-]+)/(.*)\?(.+)$" => "/engine/handlers/service_handler.php?handler=$1&request=$2&$3",
        "^/services/api/([A-Za-z0-9\_\-]+)/(.*)$" => "/engine/handlers/service_handler.php?handler=$1&request=$2",
        "^/export/([A-Za-z]+)/([0-9]+)$" => "/services/export/handler.php?view=$1&guid=$2",
        "^/export/([A-Za-z]+)/([0-9]+)/$" => "/services/export/handler.php?view=$1&guid=$2",
        "^/export/([A-Za-z]+)/([0-9]+)/([A-Za-z]+)/([A-Za-z0-9\_]+)/$" => "/services/export/handler.php?view=$1&guid=$2&type=$3&idname=$4",
        "^/_css/css\.css" => "/_css/css.php",
        "^/pg/([A-Za-z0-9\_\-]+)/(.*)\?(.+)" => "/engine/handlers/pagehandler.php?handler=$1&page=$2&$3",
        "^/pg/([A-Za-z0-9\_\-]+)/(.*)" => "/engine/handlers/pagehandler.php?handler=$1&page=$2",
        "^/pg/([A-Za-z0-9\_\-]+)\?(.+)" => "/engine/handlers/pagehandler.php?handler=$1&$2",
        "^/pg/([A-Za-z0-9\_\-]+)" => "/engine/handlers/pagehandler.php?handler=$1",
        "^/xml-rpc.php" => "/engine/handlers/xml-rpc_handler.php",
        "^/mt/mt-xmlrpc.cgi" => "/engine/handlers/xml-rpc_handler.php",
        "^/tag/(.+)/?$" => "/engine/handlers/pagehandler.php?handler=search&page=$1"
    )
}
  • 将服务器名称添加到 /etc/hosts
$ echo 127.0.0.50 localconnect >>/etc/hosts

创建 Elgg 数据库

  • 启动 mysql 客户端(您也可以在没有 -p 的情况下执行以下命令,它有效)
mysql -u root -p 
  • 创建数据库,创建用户并授予用户对数据库的权限
CREATE DATABASE connectdb; 
CREATE USER 'connectuser'@'localhost' IDENTIFIED BY 'verycoolpassword'; 
GRANT ALL ON connectdb.* to 'connectuser'@'localhost';
  • 或者使用一些 GUI 界面来执行此操作(例如 PHPMyAdmin)

使用 iChain 插件

要在您的开发安装中使用 ichain 插件,请在管理设置中启用它,并将您的用户名添加到 mod/ichain_login/start.php

首次运行

  • 转到 http://localconnect/ 并输入您的数据库凭据
  • 在管理 -> 工具管理中启用插件:“pluginsettings”,然后使用“导入设置”从 doc/site-export.xml 导入默认插件列表/顺序

首次运行时的问题

a) 错误消息: “欢迎使用 Elgg - Elgg 无法使用给定的凭据连接到数据库。”

为了克服此问题,您需要使用文本编辑器打开以下文件“/connect/engine/settings.php”,并按照此处所示的方式添加或修改以下参数

// 数据库用户名

$CONFIG->dbuser = 'user'; //您的数据库用户名

// 数据库密码

$CONFIG->dbpass = 'user'; //您的用户密码

// 数据库名称

$CONFIG->dbname = 'connectdb'; // 您的数据库名称

// 数据库服务器

// (对于大多数配置,您可以将其保留为 'localhost')

$CONFIG->dbhost = 'localhost';

// 数据库表前缀

// 如果您正在与其他应用程序共享数据库,您将希望使用此

// 以区分 Elgg 的表。

//$CONFIG->dbprefix = '';

b) 在配置 “系统设置” 并填写 “上传文件将存储的目录的完整路径,后跟斜杠” 时,请尝试添加一个未放置在 Connect 安装文件夹中的文件夹。 此外,通过键入授予此文件夹写入权限

sudo chmod 777 folder_name