Difference between revisions of "Amahi 7 Create Manual Web App"

From Amahi Wiki
Jump to: navigation, search
 
(39 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{AdvancedUsers}}
+
{{MessageBox|
To accommodate those users who need the manual web app feature currently not available in Amahi 7, the following guidance is provided.  This has been tested and no issues were noted.
+
backgroundcolor = #faa|
 
+
image =Warning.png|
Choose a name for your app.  It should be short, lowercase, and do not use spaces.  For example, <b>head_phones</b> or <b>headphones</b> are acceptable names.  (remember to replace all occurrences of <u>appname</u> below with your desired name).
+
heading =WARNING|
 
+
message =  
<b>NOTE:</b>  There is no guarantee this will work for you or not cause problems with your Amahi 7 install.  Please proceed with caution as carelessness could render your HDA inoperable.
+
Amahi 7 or greater application [https://www.amahi.org/apps/web-apps Web App] provides this capability.}}
 
 
As [[Open_Terminal_as_root|root user]], perform the following steps:
 
* Build directory structure
 
<pre>mkdir -p /var/hda/web-apps/appname
 
mkdir -p /var/hda/web-apps/appname/html
 
mkdir -p /var/hda/web-apps/appname/logs
 
chown -R apache:users /var/hda/web-apps/appname
 
chown -R apache:users /var/hda/web-apps/appname/html
 
touch /var/hda/web-apps/appname/logs/access_log
 
touch /var/hda/web-apps/appname/logs/error_log
 
chown -R /var/hda/web-apps/appname/logs/access_log
 
chown -R /var/hda/web-apps/appname/logs/error_log</pre>
 
* Create Apache configuration file (use your favorite editor)
 
<pre>vi /etc/httpd/conf.d/9999-appname.conf</pre>
 
::Insert the text below (remember to change all occurrences of appname accordingly)
 
<pre><VirtualHost *:80>
 
 
 
        ServerName appname
 
        ServerAlias appname.amahi.net
 
 
 
        DocumentRoot /var/hda/web-apps/appname/html
 
 
 
        <Directory "/var/hda/web-apps/appname/html">
 
                Options Indexes FollowSymLinks MultiViews
 
                AllowOverride AuthConfig
 
                Require all granted
 
 
 
        </Directory>
 
 
 
        ErrorLog  /var/hda/web-apps/appname/logs/error_log
 
        CustomLog /var/hda/web-apps/appname/logs/access_log combined env=!dontlog
 
 
 
</VirtualHost></pre>
 
::Change permissions and restart Apache
 
<pre>chown apache:users /etc/httpd/conf.d/9999-appname.conf
 
service httpd restart</pre>
 
* Update Amahi 7 database settings<br />
 
<br />
 
::The id field is set to 99 for this example.  It can be any number not currently used by Amahi.  Recommend you keep it at 99 or greater to be safe.<br />
 
 
 
::Ensure you replace appname accordingly and the date can be changed providing you follow the format. If you changed the .conf file name, ensure it matches as well.<br />
 
 
 
::To do a quick check, you can do the following for each table:
 
<pre>echo "select max(id) from dns_aliases" | mysql -uroot -phda hda_production</pre>
 
<pre>echo "select max(id) from webapps" | mysql -uroot -phda hda_production</pre>
 
::Once you have chosen the id number, execute the following
 
<pre>echo "INSERT INTO `dns_aliases` (`id`, `name`, `address`) VALUES
 
(99, 'appname', '')" | mysql -uroot -phda hda_production</pre>
 
<pre>echo "INSERT INTO `webapps` (`id`, `name`, `path`, `kind`, `aliases`, `fname`, `deletable`, `login_required`, `dns_alias_id`, `custom_options`, `created_at`, `updated_at`) VALUES
 
(99, 'appname', '/var/hda/web-apps/appname', 'HTML', '', '9999-appname.conf', 0, 0, 99, NULL, '2013-11-17 12:00:00', '2013-11-17 12:00:00')" | mysql -uroot -phda hda_production</pre>
 
* Create a test file
 
<pre>vi /var/hda/web-apps/appname/html/index.html</pre>
 
::Insert the text below
 
<pre><!DOCTYPE html>
 
<html>
 
<body>
 
 
 
<h1>Web App TEST Page</h1>
 
 
 
<p>It works!</p>
 
 
 
</body>
 
</html></pre>
 
::Set the correct permissions on the file
 
<pre>chown apache:users /var/hda/web-apps/appname/html/index.html</pre>
 
* Test your new web app by entering <b><nowiki>http://appname</nowiki></b> in your browser.  If all goes well, you should see the test page.<br />
 
<br />
 
::If you have problems, retrace your steps.  Ensure you replaced all occurrences of appname accordingly and the id field in both tables match.
 

Latest revision as of 01:11, 25 March 2016

Warning.png WARNING
Amahi 7 or greater application Web App provides this capability.