Menu

项目Web服务

项目网站

SourceForge.net项目Web服务提供了一个强大的Web服务器平台,该平台可用于:

  • 托管有关您的项目的静态HTML内容。
  • 运行包含有关您的项目内容的内容管理系统(CMS)或其他动态网站。
  • 部署第三方开放源Web应用程序以支持您的项目团队的需求。
  • 对于那些实施Web应用程序的项目,请为您提供一个平台来为您的用户运行演示,或让您的开发团队执行测试。

备用软件池

有两个可用的项目Web池:用于处理PROJECT.sourceforge.net HTTP流量的默认池,以及用于处理PROJECT.sourceforge.io HTTPS流量的备用池。备用池开始接收某些软件的较新版本,从PHP 7.1开始(默认池使用PHP 5.4)。

如果要测试PHP应用程序以查看它是否可以在7.1(以及HTTPS)下运行,请参阅下面的X-SFio-Test标头说明。如果一切正常,您可以按照以下HTTPS说明将您的网站切换到该网站。

HTTPS

从2016年11月开始,新项目的项目网站将默认使用https:

  • https://PROJECT_NAME.sourceforge.io

当前注册的项目将保持相同的设置,但可以随时使用管理->项目Web托管-> HTTPS和PHP版本下的项目Web设置来切换其项目Web。如果出于任何原因不希望这样做,则可以在同一位置撤消操作。

HTTPS托管池还支持比默认池更高的PHP版本(请参见上文)。

有关将您的网站转换为HTTPS的帮助,请参阅此页面以获取更多详细说明。

您还可以使用支持将标头添加到Web请求的浏览器插件在HTTPS下测试您的站点。例如,Chrome的ModHeader扩展扩展或FireFox的Modify Header Value扩展。您将需要在扩展名中设置域过滤器选项,以匹配您的项目域(PROJECT.sourceforge.io和PROJECT.sourceforge.net)以及要测试的任何VHOST名称(如果已配置)。您需要添加到请求中的标头是以下内容之一:

  • X-SFio-Test: yes
  • X-SFio-Test: both

当该标头设置为“两个”时,您的测试请求将被允许通过HTTP(sourceforge.net&VHOSTs)或HTTPS(sourceforge.io)传入。设置为“是”时,您的测试请求将重定向到HTTPS。请记住,采用这种方式意味着网页可以同时获取正常的HTTP和测试HTTPS请求,这与仅翻转HTTPS开关(所有流量将通过HTTPS到达)不同。无论哪种情况,请求都将被路由到具有较新软件版本(例如PHP 7)的备用主机池。请注意,他的标头还具有避免Web缓存的副作用,这可以帮助您进行测试。

如果遇到任何问题,请参阅下面的“故障排除”部分,以了解如何访问错误日志。

Project Web快速入门指南

您说的是什么,您只想了解它?使用我们支持的协议之一(例如SFTP,SCP或rsync)上传文件:

[jsmith @ linux〜] $ sftp jsmith@web.sourceforge.net正在
连接到web.sourceforge.net ... 
无法确定主机'web.sourceforge.net(216.34.181.70)'的真实性。
RSA密钥指纹为b0:a8:eb:30:ce:1a:0e:6a:4d:7a:6b:3a:0a:c6:27:60。
您确定要继续连接(是/否)吗?
警告:将“ web.sourceforge.net,216.34.181.70”(RSA)永久添加到已知主机列表中。
jsmith@web.sourceforge.net的密码:
sftp> cd / home / project-web / fooproject / htdocs 
sftp> put index.html 
将index.html 上载到/home/project-web/fooproject/htdocs/index.html 
index.html 100%241 0.2KB / s 00:01 
sftp>退出

此过程的关键是进行身份验证。

连接设定

如果使用GUI SFTP客户端(例如Filezilla)上载到Project Web,则应使用以下设置:

设置:值

主机: web.sourceforge.net
协议: SFTP
端口: 22
用户名:您的登录名(用户名)(例如jsmith)
密码:您的登录密码
上传路径: / home / project-web / fooproject / htdocs

注意:通过SFTP,/ home / project-web /目录将显示为空,但是,如果直接导航到/ home / project-web / fooproject /目录,则可以访问项目的web文件。

特征

  • 我们的项目Web服务器每天经常处理超过5000万次点击;我们处理服务器扩展,负载平衡和性能调整。
  • 项目Web平台已在运行Apache 2.4.x的CentOS 7.x Linux上标准化。
  • 支持许多编程语言,包括PHP(通过mod_php)和cgi-bin:Perl,Python,Tcl(tclsh)和shell脚本。
  • 提供了对多个数据库平台的支持,包括MySQL(通过我们的项目数据库服务),DBM和SQLite。
  • 项目Web内容可以使用我们的文件管理服务上传,也可以使用我们的Shell服务直接管理。
  • 为每个项目分配了UNIXNAME.sourceforge.net VHOST(虚拟主机),该虚拟主机用于提供其项目Web内容。
  • 当配置为自定义VHOST时,我们的服务器将回答您注册的域的流量。
  • 提供了常见的Web服务器功能,例如mod_rewrite,服务器端包含(SSI),HTTP基本身份验证和自定义错误处理程序支持。
  • 服务使用不受配额限制。

管理

  • Project Web服务是一项“永远在线”的服务;无需选择加入。要开始使用项目网站,只需将新内容或脚本上载到您的项目网站空间。
  • 上载可以使用SFTP执行,也可以选择直接通过SSH会话管理文件到我们的交互式Shell服务。
  • 在将索引页面上载到项目网站空间之前,它会重定向到SourceForge上项目的“摘要”页面。

重定向到另一个站点

许多项目只是希望他们的开发人员网页指向其他地方托管的自己的网站。

这是允许的,可以通过HTML重定向或PHP重定向来实现。PHP的示例:

<?php 
/ *重定向浏览器* / 
标头“位置:http://example.com” );
/ *确保重定向时,以下代码不会执行。* / 
退出; 
?>

将该目录作为文件名index.php放置在目录中,并将URL设置为Hosted App的URL,该Hosted App希望作为开发人员Web空间的主页。

HTML的示例:

<!DOCTYPE HTML PUBLIC“-// W3C // DTD HTML 4.01 // EN”“ http://www.w3.org/TR/html4/strict.dtd”> 
< html  lang = “ en” > 
    < > 
    < 标题>重定向</ 标题> 
    < meta  http-equiv = “ content-type”  content = “ text / html; charset = UTF-8” > 
    <!-重定向浏览器,3表示重定向之前的秒数-> 
    < meta  http-equiv = “刷新”  content = “ 3; URL = http://example.com”> 
    </ > 
    <> 
        < p >重定向到:< 一个 HREF = “http://example.com” > http://example.com </ > </ p > 
    </ 身体> 
</ HTML >

特殊文件系统权限

您的项目Web文件的文件系统具有特殊的权限处理,这使得多个用户在更新项目文件时可以轻松进行协作,而不必担心用于限制和/或阻止文件更改的文件所有权问题。有关完整的详细信息,请参见Project Web Filesystem Permissions该页面还说明了如何使您的文件可被项目Web服务器上的自己的Web应用程序写入。

访问

在SourceForge.net上,每个项目都将获得PROJECT.sourceforge.io(或可能是.net)子域,其中“ PROJECT”是项目的UNIX名称。PROJECT.sourceforge.io域通过https访问,而(较旧的)PROJECT.sourceforge.net域通过http(不安全)访问。

例如,可以在以下位置查看“ gparted”项目的项目网站:https : //gparted.sourceforge.io/

自定义VHOST

另外,可以使用您注册的域来服务项目网站。通过我们的自定义VHOST服务进行配置后,我们的服务器会将这些流量路由到您的项目网站

例如,SourceForge.net上的phpMyAdmin项目有一个项目网站,可以从http://phpmyadmin.sourceforge.nethttp://www.phpmyadmin.net访问该网站

故障排除

为了解决您网站上的错误,有时在打开浏览器错误显示时很有用。例如,要查看大多数运行时PHP错误,请临时放置“ ini_set('display_errors',1);”。进入PHP代码(完成调试后将其删除)。

也可以下载Apache错误日志文件。这些是来自所有Web服务器的定期更新的压缩日志文件,因此您需要抓取其中的一组文件并通过zgrep浏览这些文件,以查找与项目域相关的错误。

从/ home / project-web / error_logs目录复制error.log.sfnet-NUM.gz文件(对于sourceforge.net域)或error.log.sfio-NUM.gz文件(对于sourceforge.io域)。通过这样的命令:

rsync -aiv web.sf.net:/home/project-web/error_logs/*sfio* dest-dir/

If you need to find the error logs for a VHOST domain, grab the sfnet logs if your domain's DNS is pointing at the default vhost.sourceforge.net domain, or the sfio logs if your domain's DNS is pointing at the alternate vhost2.sourceforge.net domain.

Backups

SourceForge.net performs routine backups for all of our servers and will restore from these backups in the event of catastrophic server failure. We encourage projects to make their own backups of project web data as that data restore can be performed by the project in the event of accidental data destruction by a member of the project team.

Backups of project web data may be made using the File management service.

Service-specific restrictions

Our policies require the following when using the project web service, in addition to the requirements of our Terms of Use:

  • We encourage all projects to display the SourceForge.net logo we provide for statistics tracking (sflogo) to highlight that the site is hosted on SourceForge.net.
  • Content and applications in project web space must be related to the project. For hosting of personal content, please instead use our developer web service.
  • We ask that all projects give consideration to resource usage, particularly since our servers are shared among many projects. Our servers may not be used for bandwidth intensive or CPU-intensive (e.g. SETI or brute force cryptography cracking) things. Similarly, project web may not be used to host services, such as MMORPG games or whole-Internet search engines.

Changes as of October 2018

  • PROJECT.sourceforge.io domains now get PHP 7.1

Changes as of July 2018

Changes as of February 2018

  • Upgraded to CentOS 7
  • Upgraded to PHP 5.4

Changes as of November 2016

  • 默认情况下,新项目的项目网站(https://PROJECT_NAME.sourceforge.io)将使用HTTPS
  • 当前项目可以将其项目网站从HTTP更改为HTTPS。

截至2011年2月的变更

我们在2011年2月的项目网络升级中进行了许多改进:

  • 带有升级软件的新服务器池(例如php 5.3而不是5.2)
  • 您可能需要调整php脚本,以使用5.3中过时的某些做法。
  • 可以从项目Web应用程序发送授权的电子邮件。
  • 文件的上传路径已更改为/ home / project-web / PROJECT_NAME。
  • / home / groups / P / PR / PROJECT_NAME的旧上传路径将继续工作一段时间,但是您应该尽快过渡到新路径。
  • 您应该编辑所有引用旧的/ home / groups和/或/ home / persistent路径的脚本。
  • 项目不再有/ home / persistent目录,因为主文件系统现在支持用户选择的Web应用程序写权限。
  • 如果您在/ home / persistent / P / PR / PROJECT_NAME目录中包含内容,则该内容已被复制到目录/ home / project-web / PROJECT_NAME / persistent中,并且已根据需要修改了权限以使用新文件系统。
  • 在复制过程中,指向/ home / persistent的所有符号链接都已为您更新。
  • 您应将所有包含机密(例如数据库密码)的文件标记为仅所有者和组可读(无全局可读性)。这将使您的秘密仅对项目成员和您自己的Web应用程序有效。
  • 您可以随意将文件/目录从此持久目录中移出到常规htdocs层次结构中。
  • 将可写区域分开的一件好事是,您可以更轻松地确保htdocs目录中的主文件未标记为可组写,这意味着它们不能被Web应用程序漏洞利用。
  • 改善所有文件的文件权限(请参见上文:特殊文件系统权限)

有关

文档:自定义VHOSTs
文档:项目数据库
文档:Project Web文件系统权限
文档:Shell服务
文档:ToC

Oh no! Some styles failed to load. Please try reloading this page

原文