我如何在CWP(Centos-Web-Panel)中使用laravel网站。网址中没有公用文件夹?

时间:2019-03-07 07:00:34

标签: php laravel .htaccess nginx centos-web-panel

嗨,我想更改服务器面板为CWP centos-web-panel的网站的根目录。我找到了一个解决方案,说在DocumentRoot中更改了directoryhttpd.conf,但是我无法更改它,因为我的很多网站都使用此服务器。我想更改一个网站中的根文件夹。 另外,我找到了另一个解决方案,说可以编辑文件。

# nano /etc/httpd/conf.d/your_site.conf

并将此代码添加到文件中

<VirtualHost *:80>
DocumentRoot /var/www/html/your_site/public
ServerName your_domain

<Directory /var/www/html/your_site/>
AllowOverride All
</Directory>
</VirtualHost>

但不起作用。 我该怎么做? 或使用.htaccess或拥有自己的laravel模板有什么解决方案?

所以我想将/public_html/中的/public_html/public/更改为centos-web-panel i使用Nginx

5 个答案:

答案 0 :(得分:2)

在.htaccess中添加此代码

    RewriteEngine开启

RewriteRule ^(.*)$ public/$1 [L]

并将index.php文件复制到根文件夹并按照步骤进行 https://hellocoding.wordpress.com/2014/05/17/how-to-remove-public-from-url-in-laravel/ https://hdtuto.com/article/laravel-remove-public-from-url-using-htaccess

答案 1 :(得分:2)

您需要执行以下操作,以在URL中公开发布您的应用程序:

将server.php重命名为index.php,然后从公用文件夹复制.htaccess文件,并将其与index.php(以前是server.php)平行粘贴

要隐藏.env文件,请在.htaccess文件中添加以下行

# Disable index view
Options -Indexes

# Hide a specific file
<Files .env>
    Order allow,deny
    Deny from all
</Files>

答案 2 :(得分:2)

转到:

WebServer Settings -> Conf Editor -> Apache -> /usr/local/apache/conf.d/vhosts/

搜索 yourwebsite.ssl.conf & yourwebsite.conf 单击编辑并更改您的 DocumentRoot、目录

DocumentRoot /home/(your_user)/public_html/pulic

Directory "/home/(your_user)/public_html/pulic

重启 Apache

答案 3 :(得分:0)

我更喜欢这个答案。这更安全。无需重定向。 在public_html也许foldername中创建一个文件夹,然后将所有文件和文件夹从public_html移到foldername,然后将所有文件和文件夹从public laravel文件夹移到{ {1}}打开public_html并像这样进行编辑。

index.php

require __DIR__.'/../vendor/autoload.php';
$app = require_once __DIR__.'/../bootstrap/app.php';

然后使用require __DIR__.'/foldername/vendor/autoload.php'; $app = require_once __DIR__.'/foldername/bootstrap/app.php';

隐藏.env文件

完成

答案 4 :(得分:0)

如果可以访问ssh 删除public_html文件夹     rm -rf public_html / 创建快捷方式到公用文件夹(laravel),我们将laravel放在同一级别public_html     ln -s laravel / public public_html 现在完成了