Skip to content

pdsinterop/multiuser-php-solid-server

Repository files navigation

Standalone PHP Solid Server

This project is a standalone Solid Server.

It reuses the PHP libraries from PDS Interop as the basis for the Solid server. For the user management, no framework is used to keep the codebase lean.

Installation

Start the docker containers:

docker-compose up

This will start up three containers: the solid server, pubsub server and a mailpit server. If you have an actual SMTP server running, feel free to remove the mailpit container. The persisted data will be stored in the data/ directory. This contains the keys, pods, db and mailpit data.

Run the following commands to set up the container (replace 'solid' below with the name of your container): Note: Update the values in the config.php file where needed befure running the init script.

docker exec -w /opt/solid/ solid cp config.php.example config.php
docker exec -u www-data -i -w /opt/solid/ solid php init.php
docker exec -w /opt/solid/ solid chown -R www-data:www-data keys pods db

DNS gotcha and snake oil certificate

The webIds are created as id-xxxxx.{baseHost}, so in our example, that would be id-xxxx.solid.local. Storage pods are created as storage-xxxxx.{baseHost}, so that would become storage-xxxx.solid.local. The snake oil certificate is only for localhost, so accessing this will generate a warning for an invalid certificate;

You may also need to add these hosts to /etc/hosts to make them available for the browser by pointing them to 127.0.0.1.

This solid server was built op on these releases:

  • pdsinterop/flysystem-rdf (v0.6.0)
  • pdsinterop/php-solid-crud (v0.8.1)
  • pdsinterop/php-solid-auth (v0.13.0)

Contributing

Questions or feedback can be given by opening an issue on GitHub.

All PDS Interop projects are open source and community-friendly. Any contribution is welcome! For more details read the contribution guidelines.

All PDS Interop projects adhere to the Code Manifesto as its code-of-conduct. Contributors are expected to abide by its terms.

There is a list of all contributors on GitHub.

For a list of changes see the the GitHub releases page.

License

All code created by PDS Interop is licensed under the MIT License.

Funding

This project was funded through the NGI0 Core Fund, established by NLnet with financial support from the European Commission's Next Generation Internet programme. Learn more at the NLnet project page

NLNet logo NGI0 Core logo European Commision logo

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors 2

  •  
  •