What is VFS connection does not exist on AWS C9

I start run server on terminal
and got this when preview

1 Like

Could you make sure that you’re:

  1. Running the server on 127.0.0.1:8080 (NOTE: this is different from c9.io, which uses 0.0.0.0:8080)
  2. Opening the preview in a browser that currently has the IDE that you’re previewing from open

Hi,

I am also facing the same issue. On the same browser on which the IDE is open, I am able to open the URL in a new tab, but not able to open it in a different browser or say Postman app. How to do this?

Thanks,

Aritra

2 Likes

I have the same problem on aws Cloud9

AWS Cloud9’s preview URL requires that you have the IDE open (which establishes the VFS connection) and that you have a session available to what you’re using to access the endpoint that’s logged into the AWS console with access to the IDE. Because of this, we do not recommend using this to test API endpoints or other services which access this endpoint without the ability to log into the AWS console.

Instead, if you want to test an API endpoint, we recommend sharing the app over the internet (rather than through the Preview URL). You can find instructions on how to do this here: https://docs.aws.amazon.com/cloud9/latest/user-guide/app-preview.html#app-preview-share

Hi, I’m not able to preview my code on the rails server for port 8080.
I’ve tried: rails s -b $IP -p $PORT which leads to a VFS Connection Does Not Exist page. I’ve exited the environment, restarted my browser, cleared cookies, booted my instance, and it would work for the first time that I run it, but any subsequent requests to open the rails server again would result in the connection does not exist page. This is highly frustrating and I’ve yet to find any forums/FAQS/resources that addresses this.

I have exactly same issue when I try to rails s -b $IP -p $PORT these days.
I’m not sure when it started but I think it was between the middle and the end of April.

In my case, I also use port 8081 for phpMyAdmin, GUI for mysql on browser.
My rails application and phpMyAdmin both got VFS Connection Does Not Exist.

For the love of god, please just make this a simple one-click set-up option in the Share panel in AWS Cloud9. The configuration article for making the running app publicly viewable is painfully complex!!!

7 Likes

Why did AWS have to turn something very good into something so complicated. It was so easy to share projects and a BIG reason why I love coding with Cloud9. Now its just another AWS service with endless configurations.

2 Likes

Excactly! It’s a disaster now to run app publicly.

2 Likes

It’s a big disaster especially when using apartment gem in rails, subdomains become very complex!

2 Likes

Totally agree, real disaster. Not sure I will continue with Cloud9.
It’s really a shame

1 Like

Hi,

I also have the same question and I couldn’t find the answer. I looked here but I would love it if anyone can help us out.

Thank you.

It would be good if someone make new “c9” as it was earlier :slight_smile: I would go there. I see Codeanywhere go in this direction… AWS is very complicated and anti-sutable platform. Sorry about good but dying c9 :anguished:

After a lots of researches, I finally was able to run Apache2 / mySQL / phpMyAdmin on AWS cloud9 EC2. I added the following pages on my blog to help others :

1 Like

My particular issue was that I needed one rails server to communicate with another rails server using Cloud9 on AWS. This was not working. VFS errors, couldn’t launch my server using the public address, etc… As mentioned, classic C9 was just a check box. For AWS C9, the process is not that simple, but after working with AWS support (they went above and beyond) my servers are accessible to the internet! (c9 is closing in a week… no pressure…).

So if this is where you’re at, here’s what you’ll need to do:

1-Create a VPC and Subnet setup, TCP port 8080 allowed.
2-Create Cloud9 server and attach it to the new VCP and subnet.
3-Create a security group that allows TCP port 8080 allowed.
4-Attach the security group to the newly created EC2 Cloud9 server.
5-Start rails server using private address.
6-Access rails server from internet using http://public_ip_address:8080

One problem I couldn’t solve is attaching an elastic IP to the server. If anyone has tried this and successfully made it work, please share.

Hope this helps!

Tweet me @denisdaigle if you hit any rails / cloud9 issues #WeAreAllInThisTogether

my rough notes I used to get this working in a basic (somewhat not-secure way) for testing purposes:
(all based on the article referenced above by the person from Cloud9 team)

/* how to verify a Cloud9 endpoint via a semi-real URL:
1. Get the ID and the IP address of the instance: in Cloud9 terminal: curl http://169.254.169.254/latest/meta-data/instance-id
- you will need this for step #3
2. Get the Amazon EC2 instance’s public address: in Cloud9 terminal: curl http://169.254.169.254/latest/meta-data/public-ipv4
a. Setup Security Group for instance:
- In the IDE for the environment, on the menu bar, choose your user icon, and then choose Manage EC2 Instance
- In the Description tab for the instance, choose the security group link next to Security groups.
- In the Edit inbound rules dialog box, choose Add Rule.
- For Type, choose Custom TCP Rule.
- For Port Range, type 8080, 8081, or 8082.
- For Source, choose Anywhere. - NOTE: Choosing Anywhere for Source allows incoming requests from any IP address. To restrict this to specific IP addresses, choose Custom and then type the IP address range, or choose My IP to restrict this to requests from your IP address only.
- Choose Save.
3. Share the running app URL (created from step #2) - it will be something like: 3.94.167.14:8082/index.html
*/