Rosariosis is a full-featured Student Information System. GitHub
This is a detailed Rosariosis installation guide for openSUSE and RedHat based distributions. The offical Rosariosis guide can be found here.
You might want to switch to the root user before preceding.
sudo su -
postgresql
and php
. The package names are postgresql-server
and php
. It is recommended to install postgresql-contrib
package which several additional features for PostgreSQLzypper install -y postgresql-server php7 postgresql-contrib
zypper install -y php7-pgsql php7-gettext php7-mbstring php7-gd \
php7-curl php7-xmlrpc php7-zip php7-fpm php7-openssl
zypper install -y nginx git-core
systemctl enable --now postgresql
postgres
and run the psql
command.su - postgres
psql
rosariosis_user
) and password to.CREATE USER rosariosis_user WITH PASSWORD 'tux';
rosariosis_user
with the user you created in the previous step.CREATE DATABASE rosariosis_db WITH ENCODING 'UTF8' OWNER rosariosis_user;
then logout of psql by typing \q
. Don't forget to exit out of PostgreSQL shell and back to your root.
/var/lib/pgsql/data/pg_hba.conf
with the following.# To overwrite the contents of the file and open for editing
> /var/lib/pgsql/data/pg_hba.conf && nano /var/lib/pgsql/data/pg_hba.conf
# DO NOT DISABLE!
# If you change this first entry you will need to make sure that the
# database superuser can access the database using some other method.
# Noninteractive access to all databases is required during automatic
# maintenance (custom daily cronjobs, replication, and similar tasks).
#
# Database administrative login by Unix domain socket
local all postgres peer
# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all md5
# IPv4 local connections:
host all all 127.0.0.1/32 md5
# IPv6 local connections:
host all all ::1/128 md5
# Allow replication connections from localhost, by a user with the
# replication privilege.
#local replication postgres peer
#host replication postgres 127.0.0.1/32 md5
#host replication postgres ::1/128 md5
Refer issue here | Solution Gist
systemctl restart postgresql.service
cd /srv/www/htdocs
git clone https://gitlab.com/francoisjacquet/rosariosis.git
config.inc.sample.php
and replace database name, user and password with values you created earlier.cd rosariosis/
cp config.inc.sample.php config.inc.php
/etc/nginx/conf.d/rosariosis.conf
. In my case nginx will be listening on port 8080;nano /etc/nginx/conf.d/rosariosis.conf
server {
# Change this directive if you want
# nginx to serve on a diffrent port
listen 8080;
# replace with your domain, if you have
#server_name example.com www.example.com;
root /srv/www/htdocs/rosariosis;
index index.php
access_log /var/log/nginx/rosariosis_access.log;
error_log /var/log/nginx/rosariosis_error.log;
location / {
}
location ~* \.php$ {
# With php-fpm unix sockets
fastcgi_pass unix:/var/run/php-fpm/www.sock;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
}
}
nginx -t
cp /etc/php7/fpm/php-fpm.conf.default /etc/php7/fpm/php-fpm.conf
cp /etc/php7/fpm/php-fpm.d/www.conf.default /etc/php7/fpm/php-fpm.d/www.conf
/etc/php7/fpm/php-fpm.d/www.conf
. They are on different lineslisten = /var/run/php-fpm/www.sock
listen.owner = nginx
listen.group = nginx
systemctl enable --now nginx
systemctl enable --now php-fpm.service
firewall-cmd --add-port=8080/tcp --permanent
firewall-cmd --reload
Next test is to populate the database with some records, point your browser to: http://yourdomain.com/InstallDatabase.php or http://ip-address:port/InstallDatabase.php
That's it!... now, point your browser to: http://yourdomain.com/index.php or http://ip-address:port/index.php
The default username and password combination is admin
admin
.
Rosariosis Installation Guide for RedHat based distributions
Linux localhost.localdomain 4.18.0-305.el8.x86_64 #1 SMP \
Thu Apr 29 08:54:30 EDT 2021 x86_64 x86_64 x86_64 GNU/Linux
postgresql
and php
.postgresql-server
and php
. It is recommended to also install postgresql-contrib
with contains several features for postgresqlyum install -y postgresql-server php postgresql-contrib
yum install -y php-pgsql php-gettext php-mbstring php-gd \
php-curl php-xmlrpc php-xml php-zip
yum install -y nginx
postgresql-setup --initdb --unit postgresql
systemctl enable --now postgresql
need_to_check
sudo -u postgres psql -c "SELECT version();"
sudo -u postgres psql
CREATE USER rosariosis_user WITH PASSWORD 'tux';
CREATE DATABASE rosariosis_db WITH ENCODING 'UTF8' OWNER rosariosis_user;
then logout \q
vim /var/lib/pgsql/data/pg_hba.conf
change peer
to md5
as per RosarioSIS setup guide. (Edit.. this was the root cause of my pain, just replace the file with this) Answer Gist# DO NOT DISABLE!
# If you change this first entry you will need to make sure that the
# database superuser can access the database using some other method.
# Noninteractive access to all databases is required during automatic
# maintenance (custom daily cronjobs, replication, and similar tasks).
#
# Database administrative login by Unix domain socket
local all postgres peer
# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all md5
# IPv4 local connections:
host all all 127.0.0.1/32 md5
# IPv6 local connections:
host all all ::1/128 md5
# Allow replication connections from localhost, by a user with the
# replication privilege.
#local replication postgres peer
#host replication postgres 127.0.0.1/32 md5
#host replication postgres ::1/128 md5
systemctl restart postgresql.service
cd /var/www/html
git clone https://gitlab.com/francoisjacquet/rosariosis.git
config.inc.sample.php
rename it to config.inc.php
/etc/nginx/conf.d/rosariosis.conf
server {
listen 8080;
# replace with your domain
#server_name example.com www.example.com;
root /var/www/html/rosariosis;
#access_log /var/log/somewhere;
#error_log /var/log/somewhere;
location / {
}
location ~* \.php$ {
# With php-fpm unix sockets
fastcgi_pass unix:/run/php-fpm/www.sock;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
}
}
nginx -t
systemctl enable --now nginx
systemctl enable --now php-fpm.service
To install the database, point your browser to: http://yourdomain.com/InstallDatabase.php
That's it!... now, point your browser to: http://yourdomain.com/index.php
and login as 'admin' password 'admin'. With this login, you can create new users, and change and delete the three template users.
wkhtmltopdf