php 我怎样才能在CWP(Centos-Web-Panel)中使用laravel网站,在URL中没有公共文件夹?

6ss1mwsb  于 2023-02-03  发布在  PHP
关注(0)|答案(5)|浏览(85)
  • 嗨,我想改变服务器面板是CWP centos-web-panel的我的网站的根目录。我找到一个解决方案,说改变DocumentRoothttpd.conf中的directory,但我不能改变,因为我的网站使用这个服务器很多。我想改变我的网站之一的根文件夹。此外,我找到另一个解决方案,说编辑文件。*

# 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模板?*
  • 所以我想在centos-web-panel中将/public_html/更改为/public_html/public/*i使用Nginx
xfyts7mz

xfyts7mz1#

请访问:

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

搜索mydomain. ssl. confmydomain. conf并单击编辑

搜索DocumentRoot并对其进行更改
发件人:

DocumentRoot /home/username/public_html

收件人:

DocumentRoot /home/username/public_html/public

    • 之后不要忘记重新启动Apache。**

完成

ecfdbz9o

ecfdbz9o2#

将此代码添加到. htaccess中
重写引擎打开

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

sbdsn5lh

sbdsn5lh3#

要在URL中不使用public来指向应用程序,需要执行以下操作:
将你的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>
qyuhtwio

qyuhtwio4#

  • 我更喜欢这个答案。这是更安全的。并且不需要重定向。在public_html中创建一个文件夹,可能是foldername,然后将所有文件和文件夹从public_html移动到foldername之后,将所有文件和文件夹从public laravel文件夹移动到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';
  • 然后使用.htaccess隐藏.env文件 *
    完成
k2arahey

k2arahey5#

如果您具有ssh访问权限,请删除public_html文件夹

rm -rf public_html/

创建公共文件夹的快捷方式(laravel),我们将把laravel放在同一级别的public_html中

ln -s laravel/public public_html

现在它完成了

相关问题