我是apache2和DigitalOccean的新手。我有一个Laravel项目API。我在DigitalOcean服务器上安装了php mysql和apache2。我想使用IP地址和端口号8000(如http://139.59.28.165:8000)(在防火墙中启用端口8000)访问API。但是当我浏览链接http://139.59.28.165:8000时,它显示了This site can’t be reached
。
但没有端口号,它显示目录
当前DocumentRoot(/etc/apache2/sites-available/000-default.conf)
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/crm-api
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
# vim: syntax=apache ts=4 sw=4 sts=4 sr noet
答案 0 :(得分:1)
将虚拟主机中的端口更改为8000
<VirtualHost *:8000>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/crm-api
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
# vim: syntax=apache ts=4 sw=4 sts=4 sr noet
您还可能希望将DocumentRoot设置为 / var / www / crm-api / public
Laravel指定公用文件夹应为文档根目录。
然后继续并重新启动apache。
答案 1 :(得分:1)
尝试
在服务器名称上通过以下方式创建配置文件
sudo nano /etc/apache2/sites-available/139.59.28.165:8000.conf
并添加以下内容
<VirtualHost *:8000>
ServerName 139.59.28.165:8000
ServerAdmin webmaster@localhost
DocumentRoot /var/www/crm-api/public
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
<Directory /var/www/crm-api>
AllowOverride All
</Directory>
</VirtualHost>
运行以下命令
sudo a2dissite 000-default.conf
sudo a2ensite 139.59.28.165:8000.conf
sudo a2enmod rewrite
sudo service apache2 restart
在hosts
文件/etc/hosts
127.0.0.1 139.59.28.165
还要在ports configuration
/etc/ports.conf
Listen 8000
别忘了重新启动apache2 sudo service apache2 restart
答案 2 :(得分:0)
您必须将virtualhost的端口更改为8000 并在DocumentRoot的末尾添加public。 希望启用您的配置。
<VirtualHost *:8000>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/crm-api/public
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
就像apache2不听8000 您必须通过编辑/etc/apache2/port.conf来启用它 并重新启动服务器
Listen 80
Listen 8000
<IfModule ssl_module>
Listen 443
</IfModule>
<IfModule mod_gnutls.c>
Listen 443
</IfModule>
答案 3 :(得分:0)
如果您使用的是wamp或xampp,则需要从本地服务器更改端口,应从Apache配置文件中更改端口,并将其设置为8000,而不是80