Can I delete a folder with '' (empty name) on S3? - amazon-web-services

I have an S3 bucket with a bunch of static assets for a website. At the top level, along with my regular css, js and images folders, is `` (a folder with a blank name). I might have created that folder accidentally. The 'Delete' option in the UI works with the named folders, but not with the blank folder.
How to do I delete the blank folder?

Coincidentally I found a similar no name folder in one of my buckets right after I read your question. There will be something inside that "folder". Navigate inside it till you find an actual file that you can delete or move. Once the folder is empty the path will no longer be valid and will stop showing up in your s3 client view.

Related

Host multiple websites on single domain - folder wise on aws s3

I want to have one S3 URL with index.html file and folders on bucket as folder1 and folder2.
Each folder contains build files of respective project.I want to click on folder1 link and go to respective website using AWS s3.
Folder1 link-> Project1
Folder2 link -> Project 2 and so on.
I have tried with creating Bucket on s3 and uploading build to two folders respectively according to project.I have one index.html with two links.
I have index.html file at each project level also.
I am not able to access projects on clicking on respective folder.
Can anyone suggest me something for this?
Thanks in advance.
If the homepage is being served correctly by S3 but the others are not (for a number of reasons), then check the following:
Do the objects exist in the S3 bucket. Check the filenames.
Do the objects have public read access (preferably through the bucket policy).
Does the HTML in your footer for the href go to a valid path. Be careful of relative vs absolute path.
Also check out these troubleshooting pages:
How can I troubleshoot the 404 "NoSuchKey" error from Amazon S3?
How do I troubleshoot 403 Access Denied errors from Amazon S3?

Online File Management(Django)

I am creating a django based website in which user can create folders and store some text (specifically urls and their 1 line description) in a hierarchical folder way .The site will contain a login option after that user can create folders and inside them subfolders and inside the sub folders, the user can store url and their description.
I need help in set up of database so that whenever a user logins and click on a particular folder he/she can view his/her folders and their content and create new sub folders and delete them. I am trying to use postgresql, i am all okay with the front end but the main thing in which i need help is how to create database for each folders and how to load them in my website.
PS: I am trying to keep a constraint that if a user has created folder 'A' he/she can store text but if a sub folder 'B' is created the user cannot store links in 'A'(parent folder) the links needs to be stored in the sub folders and notify to move the previously stored links to a sub folder. Same goes for the sub folders. Example now 'B' can have sub folders 'C' and 'D'.
I have tried my best to be explicit about my problem. Thanks in advance.

Whole new project inside a jekyll project

I have some website projects that I want to show case that have their own index.html files.
I want to make a route in my Jekyll website so that if I go asdf.com/project1/ I would see simply my project1.
Is this possible to do?
My project is deployed on amazon AWS S3 buckets, hosted on Cloudfront. Should I upload to the bucket and set up some kind of routing?
How would I go about doing this?
Thanks.
If you want S3 to show a specific HTML page when navigating to asdf.com/project1/ the easiest way to achieve this is by creating a file with corresponding key project1/index.html in that bucket.
Source here (bottom of page): http://docs.aws.amazon.com/AmazonS3/latest/dev/IndexDocumentSupport.html
You have two options, put those pages inside Jekyll as "projectname/index.html" or an html file without extension.
If you don't want Jekyll to process them and just use the html do not add front matter to it and jekyll will just copy them to the output folder.
Then you may need to set the right content type when uploading the website to the S3 bucket.
You may find helpful to put that into a script: https://simpleit.rocks/having-pretty-urls-in-a-jekyll-website-hosted-in-amazon-s3/

Copying a Website Template to AWS LightSail Joomal Stack

I have purchased a Joomla website template (including all content and images) from www.templatemonster.com/. When I was originally developing the website on my local machine using MAMP I created a folder under the HTDOCS parent directory and access the website by typing 'localhost\folder name'.
I have attempted to copy the files to the '/opt/bitnami/apps/folder name' assuming that this would be the correct method given that /opt/bitnami/apps/ contains the folders and files for the phpmyadmin dashboard, however this doesn't seem to work.
I followed the instructions as per https://docs.bitnami.com/installer/apps/joomla/#how-to-install-multiple-joomla-applications-in-the-same-instance, but this doesn't work because the conf directory doesn't exist within the template files. I assume this is because the Bitnami Stack includes the conf and htdocs directories under the Joomla parent by default, whereas in MAMPS the htpdocs directory would be the parent to the directories containing the content and so forth.
Is there something I am missing from this process?
Thank you for your help.
I would advise you the following:
First make a backup of /opt/bitnami/apps/joomla
Once the backup is done. Copy the template to /opt/bitnami/apps/joomla/htdocs
If it is a template with database contents you will also need to migrate the template database to mysql. The included phpmyadmin can be helpful.
You will probably have to modify the configuration files in case they are overwritten. Use the previously backed up folder for reference.

S3 Static Website Only Displays Index.html (but not other dependent files)

I've been messing around with AWS lately and it definitely great. As a first test I'm trying to host the most basic static website via S3. The site is simply just one html file and a few javascript, css and image files.
Whenever I load the static URL the only thing that loads is the index.html file, its contents and for some strange reason the only image that loads is my avatar, yet all the images are stored in the same folder. All of the css, js and image files are also written as relative links too of course.
I've made sure all the files and folders permissions are set to "world" multiple times.
I also looked at the network tab in dev tools and its giving me 200's on every GET request.
I'm completely stumped as to why this is happening. Does anyone have an idea of what I'm missing?
The url is available at http://www.mikefisher.io.s3-website-us-east-1.amazonaws.com/
I should add that the site works perfectly locally as well as on a traditional web server.
I checked my browser console and it gives me this error which I think might have something to do with it.
Resource interpreted as Stylesheet but transferred with MIME type binary/octet-stream:
Fixed it!
The issue I was having is the metadata for the CSS files in Amazon S3 were set to 'binary/octet-stream' by default.
The way I fixed this was selecting the individual files in the bucket, clicking the properties tab, then in the meta-data section typing in 'text/css' as the value.