Configuring Web Server in Google Cloud Compute Engine - networking

I have a dash application in a compute engine instance that I'm looking to view in my browser. HTTP and HTTPS traffic is enabled and the instance has a static IP address. The apache server works and when I first ran an application, the default index page located at /var/www/html showed up at the browser address http://EXTENAL_IP_OF_VM_INSTANCE
From what I've seen elsewhere, web application files tend to be stored in the /var/www directory and the index.html file is present as the default page. However I have a single app.py file that I want to run which is located in the /home/user directory, so not in any particular web directory.
I run the app by entering python3 app.py and it does run:
Running on http://127.0.0.1:8050/ (Press CTRL+C to quit)
However, going to the instance's external IP address (34.89.0.xx) in my browser doesn't show the app, instead it shows text from an old 'hello world' application I made previously, that I thought I had deleted but is still showing up.
Part of the server configuration file apache2.conf is below:
The sites-available folder contains two files, 000-default.conf and default-ssl.conf, both with /var/www/html as the DocumentRoot. 000-default.conf is also in the sites-available folder, and is the only file there.
I tried changing the DocumentRoot in these files to /home/user where the app.py file is which didn't work, then I tried moving the file to the web directory /var/www which didn't work either.
Does anyone have any suggestions on how to fix this so that I can see my application in the browser?

Related

How to restore Apache configuration file in Bitnami

When running the bncert-tool on my LightSail server, I have accidentally modified some of Apache's configuration files which I now need to revert from the backup directories.
See previous question and answer here for more info: Modified Bncert command has taken site offline
I have looked in both the /opt/bitnami/apache2/conf and /opt/bitnami/apache2/conf/bitnami directories and can see a series of files including httpd.conf.back.202101220056 (/conf) and bitnami.conf.back.202101220056 (/bitnami).
My question is which backup files do I need need to copy to which location?
I assume it is performed via a 'mv' command.
Many thanks for your help.
On a bitnami stack the main Apache server configuration file is (httpd.conf)
When you are configuring server for SSL this is usually done in the file (bitnami.conf)
I would start by replacing the current bitnami.conf with the original bitnami.conf. Then restart your server so that the changes that effect. bitnami.conf is located in the directory apache2/conf/bitnami
If that does not fix it then replace the current httpd.conf with the original httpd.conf. Then restart your server so that the changes that effect. httpd.conf is located in the directory apache2/conf .
Note you will find it a lot easier to modify server files if you connect to your server with FileZilla. You can delete and drag and drop to copy files with FileZilla.

Chrome workspace not liverefreshing static files with virtualhosts

I am working with compiled static css files on chrome workspace.
I am using gulp-less workflow for the compilation process from less to css and live editing less files to get expected css output on chrome workspace via dev tools.
Everything worked fine and i keep getting css on dev tools when i was accessing website with localhost i.e. http://127.0.0.1/website/ but now i need to setup virtualhost to run multiple website on the same localhost server.
Added required entries in the /opt/lampp/etc/extra/httpd-vhosts.conf
<VirtualHost *:80>
ServerName local.website.com
DocumentRoot /opt/lampp/htdocs/website/
</VirtualHost>
as well as etc/host entry at the system level to map the ip to domain.
127.0.0.1 local.website.com
After moving to virtual-host http://local.website.com/, i can't get refreshed files from workspace.
What are the required configurations for setting up workspace to have better frontend workflow with virtual host?
Any help will be great.
Issue was due to regenerating same directory after clearing it.
So after removing from workspace and re-adding newlly generated files in workspace with proper permission works fine.

Nginx fails to create directories on Windows 10 with error: nginx: CreateFile()...failed

I need to find a way/setting to allow Nginx to run a .bat file that will create directories and files via a WINDOWS service; my OS is Windows 10.
Currently, our windows service fails to create directories and files with the following:
CreateFile()
"C:\someForlderName\build\distribution.\nginx/logs/error.log" failed
(3: The system cannot find the path specified)
Somehow Nginx doesn't have enough permissions to perform write-access operations like creating directories such as /logs/ and /temp/ within the /Nginx/ directory.
Anybody ran into this problem before?
I was facing the same problem, sharing the thing that worked for me.
Nginx is showing this error because... nginx didn't find the error.log file..
For that,
Go to you nginx folder where other folders like conf, docs, html etc are their as.
Create folder name logs, and in that folder create a file name error.logas.
see the right way in picture..
If your Nginx is at D:\nginx\nginx.exe, execute this to start nginx
D:\nginx\nginx.exe -c D:\nginx\conf\nginx.conf -p D:\nginx\
For Nginx on Windows, you need to execute nginx server related command from respective home directory where nginx configuration file is located.

How to Copy a Local Directory to an Apache Server

I have a directory on my desktop and need to copy it to my server. I've looked up a command to do this being
scp -r /path/to/local/storage user#remote.host:/path/to/copy
but when I run it, it just tells me "No suck file or directory".
First of all is this the correct way to do this or is there an easier way to take a directory from local storage and put it onto an apache server? Once I get it on the server I can move it around just fine there. I just need to get it on there!
the path I'm using right now for local is
/Users/byw5k_000/Desktop/myWebsite
with myWebsite being the directory I want to copy onto my server.
I'm curious if I'm getting the path incorrect. What is the correct path to the desktop on a windows 10 computer and will this work for me to copy an entire directory onto an apache server?
You could try changing to your Desktop directory like this:
cd C:\Users\(username)\Desktop
and then running:
scp -r myWebsite user#remote.host:/path/to/copy
Should work as ling as you can change to your Desktop directory

Change the path of a symlinked directory in NGINX

Lets say that I have a directory /var/www/assets/ and within that directory I have a symlink which points to a folder which contains all the latest asset files for my website.
/var/www/assets/asssets -> /var/www/website/releases/xxxxxxx/public/assets
If I configure NGINX to serve asset files from /var/www/assets with the domain assetfilesdomain.com and asset files are prefixed with the directory /asset/ then when that /asset folder's symlink is changed then the updated link is not reflected in NGINX. The way that I see it, NGINX grabs the resolved path for that asset folder when it is started.
Is there any way to get around this?
Reloading nginx (sending a HUP signal to the master process) seems to solve this issue (probably because it starts new workers and shuts down the old ones, gracefully).
it seems like you're using Capistrano. You can override deploy:restart and put the nginx reloading there.

Resources