blog | ||
blogs | ||
board | ||
error-pages | ||
experiments | ||
images | ||
isthistheyearofthelinuxdesktop | ||
leaderboard | ||
links | ||
maths | ||
node | ||
search | ||
theunderland | ||
.gitignore | ||
dvdfilms.html | ||
favicon.ico | ||
gitcommit.sh | ||
html.js | ||
index.css | ||
index.css.old | ||
index.html | ||
index.html.bak | ||
index.nginx-debian.html | ||
LICENSE | ||
package-lock.json | ||
package.json | ||
README.md | ||
robots.txt | ||
sewage_scriptures.html |
Website
This is all the code for the website (deadvey.com)
Node
The nodejs code that is executed in the background is in /node
You can execute the node code in crontab (crontab -e
)
eg:
* * * * * node /var/www/html/node/makeblogs.js
* * * * * node /var/www/html/node/newsletter.js
* * * * * node /var/www/html/node/updatefeed.js
etc...
Newsletter
If you want to add members to the newsletter, I store a file as /etc/newsletter_members.js:
let members = ["member1@gmail.com","member2@outlook.com"]
if (typeof module !== 'undefined' && module.exports) {
module.exports = members;
}
Apache2 and Node.js Integration
This project utilizes Apache2 as a reverse proxy to handle incoming web traffic and forward requests to a Node.js application.
Configuration
To set up Apache2 as a reverse proxy for your Node.js app:
- Start your Node.js application (/node/app.js) on port 8003. You can run the application in a tmux session using the command:
$ node app.js
- Edit the Apache configuration file /etc/apache2/sites-enabled/000-default.conf and add the following lines to forward requests to the Node.js app:
ProxyPass / http://localhost:8003/
- If you have other sites or applications running on Apache2 that should not be proxied to Node.js, you can add exceptions like this:
ProxyPass /wordpress !
Replace /wordpress with the appropriate path for your exception:
Testing
To verify that the Node.js application is running and accessible through Apache2, you can use the curl command:
$ curl http://localhost:8003
This should return the response from your Node.js application.
Feel free to customize and expand this documentation based on your specific project requirements and additional details you would like to include.