Php Nuget Server

Purpose

This is born to have my personal repository for nuget, on my cheapo PHP hosting. With support for complex OData queries.

Verified on:

Installation

Notes for everybody

Notes for Apache With Red Hat Linux

On Red Hat Linux the mod_rewrite must be enabled on the application directory since most features depends on it. This can be achieved modifying

/etc/httpd/conf/http.conf

Then on the definition of the phpnuget directory, change the AllowOverride from "None" to "All"

From:

    <Directory "/var/www/html/phpnugetdir">
        Options Indexes FollowSymLinks
        AllowOverride None
        Order allow,deny
        Allow from all
    </Directory>

To:

    <Directory "/var/www/html/phpnugetdir">
        Options Indexes FollowSymLinks
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>

And then restart Apache

sudo service httpd restart

This should be enough to let everything works.

Notes for Apache on Windows

If php is unable to load curl-related functions copy the following files from the php directory to "C:\Windows\System". You can verify this by downloading a file from the official nuget repository via the manage packages page.

Prerequisities For IIS

These steps are NOT needed if your hosting already configured PHP

Common

Daily usage

    nuget push mypackage.nupkg myApiKey http://myhost/mynuget/upload

Administration

Simple user

For the administrators

The Api

The nuget API is based more or less on the OData protocol. All of the api lsited that returns a collection support the usage of parameters

Api V1

Api V2

All v1 APIs are present, remind to replace the v1 in the previous section with v2!

Api V3

As soon as the guys from nuget defines it. Actually is work in progress, trying to follow the "working" example on nuget.org

Other entry points

Installation of PHP for IIS

Installation for IIS 8

Tested on Windows 8 pro X64 bit and Windows 8.1 pro X64

This guid is adapted from iis.net

  1. download php for windows
  2. extract downloaded zip ( C:/php )
  3. download [php manager[(http://phpmanager.codeplex.com/releases) for IIS ( its an extension for managing PHP from IIS control panel )
  4. open php manager and click on register new php installation
  5. choose php-cgi.exe and click ok (usually is inside 'C:\Program Files (x86)\PHP\v5.3\php-cgi.exe')
  6. now check phpinfo and choose error reporting
  7. open your favorite code editor and type

and save this as hello.php ( or anything ) on c:inetpubwwwroot and open http://localhost/hello.php

now IIS is serving PHP now in next tutorial i will show you how to set up MySQL in windows

Features of PHP manger

TODO

Must

Should

Would

Updates

Licensing

This is distributed with NO WARRANTY and under the terms of the GNU GPL and PHP licenses. If you use it a notice or some credit would be nice.

You can get a copy of the GNU GPL at http://www.gnu.org/copyleft/gpl.html

You can get a copy of the PHP License at http://www.php.net/license.html

Download

See kendar.org for the latest changes.


Last modified on: June 03, 2019